.tool{--amber:#e3a63c;border:1px solid var(--line-strong);border-top-color:var(--edge-lit);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--elev-2);background:radial-gradient(46rem 24rem at 0 0,#6e9cff12,#0000 70%),linear-gradient(#ffffff0a,#ffffff03);padding:clamp(1.1rem,2.6vw,1.85rem);position:relative}.tool-head{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:1.4rem;display:flex}.tool-badge{min-height:28px;color:var(--color-blue-hi);background:#3478f61a;border:1px solid #6e9cff80;border-radius:999px;align-items:center;gap:.45rem;padding:.15rem .7rem;font-size:.8125rem;font-weight:650;line-height:1.2;display:inline-flex}.tool-local{max-width:62ch;color:var(--fg-dim);font-size:.875rem;line-height:1.45}.tool-noscript{border:1px dashed var(--line-strong);border-radius:var(--radius-md);color:var(--fg-muted);margin-top:1rem;padding:.9rem 1rem;display:none}html[data-save] .tool *,html[data-save] .tool :before,html[data-save] .tool :after{transition:none!important;animation:none!important}.xsim-grid{gap:1.75rem 2.75rem;display:grid}@media (width>=880px){.xsim-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}.xsim-areas{border:0;min-width:0;margin:0;padding:0}.xsim-areas legend{font:650 1.2rem/1.2 var(--font-display);letter-spacing:-.015em;color:var(--fg);padding:0}.xsim-hint{color:var(--fg-dim);margin:.3rem 0 1rem;font-size:.9rem}.xsim-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.xsim-opt,.rmx-sc{display:block;position:relative}.xsim-opt input,.rmx-sc input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.xsim-opt input:focus-visible,.rmx-sc input:focus-visible{outline:0}.xsim-box{border:1px solid var(--line-strong);border-radius:var(--radius-md);min-height:54px;box-shadow:var(--elev-1);transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);background:#ffffff08;align-items:center;gap:.8rem;padding:.55rem .95rem;font-weight:600;line-height:1.25;display:flex}.xsim-box svg{color:var(--color-blue-hi);flex:none}.xsim-box:after{content:"";border:1.5px solid var(--line-strong);width:22px;height:22px;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:50%/14px no-repeat;border-radius:7px;flex:none;margin-left:auto}.xsim-opt input:checked+.xsim-box{background:#3478f621;border-color:#6e9cffbf}.xsim-opt input:checked+.xsim-box:after{border-color:var(--color-blue-fill);background-color:var(--color-blue-fill);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}.xsim-opt input:focus-visible+.xsim-box,.rmx-sc input:focus-visible+.rmx-sc-box{outline:2px solid var(--color-cyan);outline-offset:3px}@media (hover:hover){.xsim-opt:hover .xsim-box{background:#ffffff0f;border-color:#a6b2c180}.xsim-opt:hover input:checked+.xsim-box{border-color:var(--color-blue-hi);background:#3478f62e}}.xsim-out{flex-direction:column;min-width:0;display:flex}.xsim-empty{border:1px dashed var(--line-strong);border-radius:var(--radius-md);color:var(--fg-muted);margin:0;padding:1.15rem 1.25rem}@media (width>=880px){.xsim-empty{text-align:center;flex:1;place-content:center;padding:2rem;display:grid}.xsim-areas{top:calc(var(--header-h) + 1.25rem);align-self:start;position:sticky}}.xsim-group h3{letter-spacing:0;color:var(--fg-muted);margin-bottom:.65rem;font-size:.9375rem;font-weight:650}.xsim-group+.xsim-group{border-top:1px solid var(--line);margin-top:1.25rem;padding-top:1.15rem}.xsim-surfaces{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.xsim-surfaces li{flex-wrap:wrap;align-items:baseline;gap:.1rem .7rem;display:inline-flex}.xsim-s-name{border:1px solid var(--line-strong);border-radius:var(--radius-control);min-height:34px;color:var(--fg);background:#ffffff0a;align-items:center;gap:.5rem;padding:.2rem .8rem;font-size:.9375rem;font-weight:650;display:inline-flex}.xsim-s-name:before{content:"";background:var(--color-coral);border-radius:50%;width:8px;height:8px}.xsim[data-variant=full] .xsim-surfaces{gap:.6rem;display:grid}.xsim[data-variant=full] .xsim-surfaces li{justify-items:start;gap:.3rem;display:grid}.xsim-why{color:var(--fg-muted);font-size:.9375rem}.xsim-evals{counter-reset:ev;gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.xsim-eval{--fam:var(--fam-assess);counter-increment:ev;border:1px solid var(--line);border-left:3px solid var(--fam);border-radius:var(--radius-md);background:#ffffff08;grid-template-columns:1.7rem minmax(0,1fr);align-items:start;gap:0 .75rem;padding:.8rem .95rem .8rem .8rem;display:grid}.xsim-eval[data-family=protect]{--fam:var(--fam-protect)}.xsim-eval[data-family=respond]{--fam:var(--fam-respond)}.xsim-eval:before{content:counter(ev);background:color-mix(in srgb, var(--fam) 18%, transparent);width:1.7rem;height:1.7rem;color:var(--fam);font:700 .8125rem/1 var(--font-display);border-radius:50%;place-items:center;display:grid}.xsim-eval-name{color:#fff;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);font-weight:650}.xsim-eval-name:hover{text-decoration-color:currentColor}.xsim-inc{color:var(--fg-muted);margin-top:.35rem;font-size:.9rem}.xsim-inc-lead{color:var(--fg-dim);margin:0 0 .2rem;font-size:.8125rem;font-weight:600}.xsim-inc ul{margin:0;padding-left:1.1rem;list-style:outside}.xsim-inc li::marker{color:var(--fam)}.xsim-order{margin-top:.75rem}.xsim-cta{justify-items:start;gap:.6rem;display:grid}.xsim-cta .btn{white-space:normal;text-align:center}.xsim-open{margin-top:.75rem}.xmap-wrap{border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--elev-1);background:#ffffff06}.xmap{border-collapse:collapse;width:100%}.xmap th,.xmap td{text-align:left;vertical-align:top;border-top:1px solid var(--line);padding:.95rem 1.15rem}.xmap thead th{color:var(--fg-dim);border-top:0;font-size:.875rem;font-weight:650}.xmap tbody th{color:#fff;font-weight:650}.xmap ul{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}@media (width<=679px){.xmap thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.xmap,.xmap tbody,.xmap tr,.xmap th,.xmap td{display:block}.xmap tr{border-top:1px solid var(--line);padding:.85rem 0}.xmap tbody tr:first-child{border-top:0}.xmap th,.xmap td{border-top:0;padding:.2rem 1.15rem}.xmap td:before{content:attr(data-label);color:var(--fg-dim);font-size:.8125rem;font-weight:650;display:block}}.rmx-scen{border:0;min-width:0;margin:0 0 .9rem;padding:0}.rmx-scen legend{font:650 1.2rem/1.2 var(--font-display);letter-spacing:-.015em;color:var(--fg);margin-bottom:.65rem;padding:0}.rmx-scen-list{flex-wrap:wrap;gap:.5rem;display:flex}.rmx-sc-box{border:1px solid var(--line-strong);border-radius:var(--radius-control);min-height:46px;box-shadow:var(--elev-1);transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);background:#ffffff08;align-items:center;gap:.55rem;padding:.4rem 1rem;font-weight:600;display:inline-flex}.rmx-sc-box svg{color:var(--color-blue-hi);flex:none}.rmx-sc input:checked+.rmx-sc-box{color:#fff;background:#3478f626;border-color:#6e9cffbf}@media (hover:hover){.rmx-sc:hover .rmx-sc-box{border-color:#a6b2c180}.rmx-sc:hover input:checked+.rmx-sc-box{border-color:var(--color-blue-hi)}}.rmx-blurb{color:var(--fg-muted);margin:0 0 1.5rem}.rmx-main{gap:1.75rem 3rem;display:grid}@media (width>=900px){.rmx-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}.rmx-left,.rmx-panel{min-width:0}@media (width>=900px){.rmx-left{top:calc(var(--header-h) + 1.25rem);position:sticky}}.rmx-axis-x{color:var(--fg-dim);margin:0 0 .4rem 3.2rem;font-size:.8125rem;font-weight:650}.rmx-gridwrap{padding-left:1.5rem;position:relative}.rmx-axis-y{color:var(--fg-dim);writing-mode:vertical-rl;white-space:nowrap;margin:0;font-size:.8125rem;font-weight:650;position:absolute;top:50%;left:0;transform:translateY(-50%)rotate(180deg)}.rmx-grid{grid-template-columns:1.7rem repeat(5,minmax(0,1fr));gap:4px;display:grid}.rmx-row{display:contents}.rmx-head,.rmx-corner{min-height:1.6rem;font:650 .8125rem/1 var(--font-display);color:var(--fg-dim);place-items:center;display:grid}.rmx-cell{--lv:var(--color-teal);aspect-ratio:1/.72;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid color-mix(in srgb, var(--lv) 55%, transparent);background:color-mix(in srgb, var(--lv) 18%, transparent);min-height:48px;color:var(--fg);font:650 1rem/1 var(--font-display);font-variant-numeric:tabular-nums;transition:background-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:8px;place-items:center;display:grid}.rmx-cell[data-level=medium],.rmx-legend [data-level=medium]{--lv:var(--color-blue-hi)}.rmx-cell[data-level=high],.rmx-legend [data-level=high]{--lv:var(--amber)}.rmx-cell[data-level=critical],.rmx-legend [data-level=critical]{--lv:var(--color-coral)}.rmx-cell[aria-selected=true]{background:color-mix(in srgb, var(--lv) 42%, transparent);box-shadow:inset 0 0 0 2px #fff, 0 0 0 4px color-mix(in srgb, var(--lv) 28%, transparent)}@media (hover:hover){.rmx-cell:hover{background:color-mix(in srgb, var(--lv) 30%, transparent)}.rmx-cell[aria-selected=true]:hover{background:color-mix(in srgb, var(--lv) 42%, transparent)}}.rmx-cell:focus-visible{outline:2px solid var(--color-cyan);outline-offset:3px;border-radius:8px}.rmx-legend{color:var(--fg-muted);flex-wrap:wrap;gap:.4rem 1.1rem;margin:1rem 0 0;padding:0;font-size:.875rem;list-style:none;display:flex}.rmx-legend li{--lv:var(--color-teal);align-items:center;gap:.45rem;display:inline-flex}.rmx-sw{border:1px solid color-mix(in srgb, var(--lv) 70%, transparent);background:color-mix(in srgb, var(--lv) 32%, transparent);border-radius:4px;width:.9rem;height:.9rem}.rmx-range{color:var(--fg-dim);font-variant-numeric:tabular-nums}.rmx-keys{margin-top:.6rem}.rmx-read{border:1px solid var(--line-strong);border-left:3px solid var(--color-blue-hi);border-radius:var(--radius-md);color:#fff;background:#ffffff0a;margin:0 0 .5rem;padding:.95rem 1.1rem;font-weight:600}.rmx-h{letter-spacing:0;color:var(--fg-muted);margin:1.3rem 0 .65rem;font-size:.9375rem;font-weight:650}.rmx-treat{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.rmx-treat li{border:1px solid var(--line);border-radius:var(--radius-md);color:var(--fg-muted);transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);grid-template-columns:minmax(0,1fr) auto;gap:.1rem .75rem;padding:.7rem .9rem;display:grid}.rmx-t-name{color:var(--fg);font-weight:650}.rmx-t-text{grid-column:1/-1;font-size:.9rem}.rmx-tag{font-size:.8125rem;font-weight:650}.rmx-treat li[data-role=main]{background:#3478f621;border-color:#6e9cffbf}.rmx-treat li[data-role=main] .rmx-tag{color:var(--color-blue-hi)}.rmx-treat li[data-role=also]{border-color:var(--line-strong);background:#ffffff0a}.rmx-rel{gap:.65rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.rmx-rel li{gap:.1rem;display:grid}.rmx-cta{white-space:normal;text-align:center;margin-bottom:.75rem}.rmx-start{margin-top:1.5rem}.tl{--fill:0%}.tl-control{gap:.5rem;margin-bottom:1.5rem;display:grid}.tl-label{font:650 1.2rem/1.2 var(--font-display);letter-spacing:-.015em;color:var(--fg)}.tl-track{position:relative}.tl-range{appearance:none;cursor:pointer;background:0 0;width:100%;height:44px;margin:0;display:block}.tl-range::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--color-coral) var(--fill), #a6b2c147 var(--fill));border-radius:3px;height:6px}.tl-range::-moz-range-track{background:#a6b2c147;border-radius:3px;height:6px}.tl-range::-moz-range-progress{background:var(--color-coral);border-radius:3px;height:6px}.tl-range::-webkit-slider-thumb{-webkit-appearance:none;border:3px solid var(--color-coral);background:#fff;border-radius:50%;width:26px;height:26px;margin-top:-10px;box-shadow:0 0 0 5px #f05a4738,0 2px 6px #00000080}.tl-range::-moz-range-thumb{border:3px solid var(--color-coral);background:#fff;border-radius:50%;width:20px;height:20px;box-shadow:0 0 0 5px #f05a4738,0 2px 6px #00000080}.tl-range:focus-visible{outline:2px solid var(--color-cyan);outline-offset:4px;border-radius:10px}.tl-ticks{height:44px;margin:0;padding:0;list-style:none;position:relative}.tl-ticks li{top:0;left:calc(13px + (100% - 26px) * var(--n) / var(--last,3));position:absolute;transform:translate(-50%)}.tl-ticks button{min-width:56px;min-height:44px;color:var(--fg-dim);font:650 .9375rem/1 var(--font-display);font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:8px;padding:0 .4rem;position:relative}.tl-ticks button:before{content:"";background:var(--color-ink-2);pointer-events:none;border:2px solid #a6b2c199;border-radius:50%;width:10px;height:10px;margin-left:-5px;position:absolute;top:-27px;left:50%}.tl-ticks button[data-reached]{color:var(--fg-muted)}.tl-ticks button[data-reached]:before{background:var(--color-coral);border-color:var(--color-coral)}.tl-ticks button[data-current]{color:#fff}.tl-ticks button[data-current]:before,.tl-moment[data-off]{display:none}.tl-moment-head{gap:.35rem;margin-bottom:1.1rem;display:grid}.tl-time{color:var(--fg-dim);margin:0;font-size:.9rem}.tl-time strong{font:700 1.6rem/1 var(--font-display);letter-spacing:-.01em;color:var(--color-coral-hi);font-variant-numeric:tabular-nums;margin-right:.4rem}.tl-moment-head h3{font-size:clamp(1.3rem,1.1rem + .8vw,1.7rem)}.tl-panels{gap:.8rem;display:grid}@media (width>=780px){.tl-panels{grid-template-columns:repeat(3,minmax(0,1fr))}}.tl-panel{--k:var(--color-cyan);border:1px solid var(--line);border-top:3px solid var(--k);border-radius:var(--radius-md);background:#ffffff09;padding:1rem 1.1rem 1.15rem}.tl-panel[data-k=evidence]{--k:var(--color-teal)}.tl-panel[data-k=action]{--k:var(--color-blue-hi)}.tl-panel h4{align-items:center;gap:.5rem;font-size:1.05rem;display:flex}.tl-panel h4 svg{color:var(--k);flex:none}.tl-hint{color:var(--fg-dim);margin:.2rem 0 .65rem;font-size:.8125rem}.tl-panel p:last-child{color:var(--fg-muted);font-size:.97rem}@keyframes tl-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}html[data-motion=live] .tl[data-moved] .tl-moment{animation:tl-in .22s var(--ease) both}@media (scripting:none){.tool-noscript{display:block}.xsim-grid,.rmx-scen,.rmx-keys,.rmx-start,.tl-control{display:none}.rmx-cell{pointer-events:none}.tl .tl-moment[data-off]{display:block}.tl .tl-moment+.tl-moment{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.75rem}}.xsim[data-failed] .xsim-grid,.rmx[data-failed] .rmx-scen,.rmx[data-failed] .rmx-keys,.rmx[data-failed] .rmx-start,.tl[data-failed] .tl-control{display:none}.xsim[data-failed] .tool-noscript{display:block}.rmx[data-failed] .rmx-cell{pointer-events:none}.tl[data-failed] .tl-moment[data-off]{display:block}.tl[data-failed] .tl-moment+.tl-moment{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.75rem}.tools-sec{border-top:1px solid var(--line)}.tools-stack,.tool-teasers{gap:1.25rem;display:grid}@media (width>=760px){.tool-teasers{grid-template-columns:repeat(2,minmax(0,1fr))}}.tool-teaser{border:1px solid var(--line-strong);border-top-color:var(--edge-lit);border-radius:var(--radius-lg);box-shadow:var(--elev-2);transition:transform var(--dur) var(--ease), border-color var(--dur) var(--ease);background:linear-gradient(#ffffff0a,#ffffff03);align-content:start;gap:.7rem;padding:1.4rem 1.5rem 1.2rem;display:grid;position:relative}.tool-teaser h3{font-size:1.25rem}.tool-teaser p{color:var(--fg-muted);margin:0}.tool-teaser .link-arrow{justify-self:start;margin-top:.25rem}.tool-teaser .link-arrow:after{content:"";border-radius:inherit;position:absolute;inset:0}.tool-teaser .link-arrow:focus-visible{outline:0}.tool-teaser:has(.link-arrow:focus-visible){outline:2px solid var(--color-cyan);outline-offset:3px}@media (hover:hover) and (pointer:fine){.tool-teaser:hover{transform:translateY(var(--lift));border-color:#a6b2c180}}.tool-teaser:hover .link-arrow svg{transform:translate(4px)}.tool-teaser .tool-badge{justify-self:start}.tool-mini-grid{grid-template-columns:repeat(5,1.1rem);gap:3px;margin:.25rem 0;display:grid}.tool-mini-grid span{--lv:var(--color-teal);border:1px solid color-mix(in srgb, var(--lv) 55%, transparent);background:color-mix(in srgb, var(--lv) 24%, transparent);border-radius:3px;height:.8rem}.tool-mini-grid [data-level=medium]{--lv:var(--color-blue-hi)}.tool-mini-grid [data-level=high]{--lv:var(--amber,#e3a63c)}.tool-mini-grid [data-level=critical]{--lv:var(--color-coral)}.tool-mini{gap:.4rem;margin:.15rem 0 0;padding:0;list-style:none;display:grid}.tool-mini li{color:var(--fg-muted);grid-template-columns:3.2rem minmax(0,1fr);gap:.6rem;font-size:.9rem;display:grid}.tool-mini b{font:700 .9rem/1.5 var(--font-display);color:var(--color-coral-hi);font-variant-numeric:tabular-nums}.tools-how{align-items:start;gap:2rem 3rem;display:grid}@media (width>=900px){.tools-how{grid-template-columns:repeat(2,minmax(0,1fr))}}.tools-how h2{margin-bottom:1rem;font-size:clamp(1.4rem,1.15rem + .9vw,1.85rem)}.tools-how ul{color:var(--fg-muted);gap:.6rem;margin:0;padding-left:1.3rem;list-style:outside;display:grid}.tools-how li::marker{color:var(--color-blue-hi)}.level-table{border-collapse:collapse;width:100%}.level-table th,.level-table td{text-align:left;border-top:1px solid var(--line);vertical-align:top;padding:.7rem .9rem}@media (width<=359.98px){.level-table th,.level-table td{padding:.6rem .55rem}}.level-table thead th{color:var(--fg-dim);border-top:0;font-size:.875rem;font-weight:650}.level-table tbody th{color:#fff;font-weight:650}.level-table [data-level] th:before{content:"";vertical-align:-.05em;border:1px solid color-mix(in srgb, var(--lv) 70%, transparent);background:color-mix(in srgb, var(--lv) 32%, transparent);border-radius:4px;width:.8rem;height:.8rem;margin-right:.55rem;display:inline-block}.level-table [data-level=low]{--lv:var(--color-teal)}.level-table [data-level=medium]{--lv:var(--color-blue-hi)}.level-table [data-level=high]{--lv:var(--amber,#e3a63c)}.level-table [data-level=critical]{--lv:var(--color-coral)}@media (pointer:coarse){.xsim-eval-name,.xmap .text-link,.rmx-rel .text-link{align-items:center;min-height:44px;display:inline-flex}}
