@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/hushdeck/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/hushdeck/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/hushdeck/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/hushdeck/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/hushdeck/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/hushdeck/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/hushdeck/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/hushdeck/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/hushdeck/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/hushdeck/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}:root{--paper:#f5f6f4;--surface:#fff;--ink:#121413;--muted:#5e6662;--line:#daddd9;--mask:#000;--mark:#f2d63b;--exposed:#c2362f;--local:#2f7d53;--font-sans:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--text-s:13px;--text-m:15px;--text-l:18px;--text-xl:28px;--radius:4px;--border:1px solid var(--line);--shadow:0 1px 3px #12141314, 0 4px 12px #1214130f;--transition:.12s ease-out;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:400 var(--text-m) / 1.5 var(--font-sans);color:var(--ink);background:var(--paper)}body{margin:0}button,input{font:inherit;color:inherit}button{border:var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;padding:6px 12px}button:disabled{cursor:default;opacity:.5}.button--primary{border-color:var(--ink);background:var(--ink);color:var(--surface);font-weight:500}.link-button{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}a{color:inherit}.logo{letter-spacing:-.01em;color:var(--ink);font-weight:600;text-decoration:none;display:inline-flex}.logo--large{font-size:var(--text-xl)}.logo--small{font-size:var(--text-l)}.logo__deck{position:relative}.logo__deck:after{content:"";background:var(--mask);transform-origin:100%;transition:transform var(--transition);position:absolute;inset:.14em -.04em .1em}.logo:hover .logo__deck:after,.logo:focus-visible .logo__deck:after{transform:scaleX(0)}.home{text-align:center;max-width:720px;margin:0 auto;padding:96px 16px 48px}.home__logo{font-size:inherit;margin:0}.home__tagline{font-size:var(--text-l);color:var(--muted);margin:12px 0 32px}.dropzone{border:1px dashed var(--muted);border-radius:var(--radius);background:var(--surface);width:100%;transition:background-color var(--transition), border-color var(--transition);flex-direction:column;align-items:center;gap:6px;padding:56px 16px;display:flex}.dropzone:hover:not(:disabled),.dropzone--active{border-color:var(--ink);background:#f2d63b59}.dropzone__title{font-size:var(--text-l);font-weight:500}.dropzone__note{font-size:var(--text-s);color:var(--muted)}.home__status{font-family:var(--font-mono);font-size:var(--text-s);margin:16px 0 0}.home__error{color:var(--exposed);margin:16px 0 0}.home__actions{flex-direction:column;align-items:center;gap:12px;margin-top:24px;display:flex}.home__points{font-size:var(--text-s);color:var(--muted);flex-wrap:wrap;justify-content:center;gap:8px 24px;margin:48px 0 0;padding:0;list-style:none;display:flex}.home__points li:before{content:"";background:var(--local);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block}.home__debug{max-width:720px;margin:0 auto;padding:0 16px 48px}.work{min-height:100vh}.topbar{z-index:10;border-bottom:var(--border);background:var(--surface);align-items:center;gap:16px;height:56px;padding:0 16px;display:flex;position:sticky;top:0}.topbar__file{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);overflow:hidden}.topbar__actions{flex-shrink:0;gap:8px;margin-left:auto;display:flex}.status-pill{border:var(--border);font-family:var(--font-mono);font-size:var(--text-s);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 8px}.status-pill--busy{color:var(--ink)}.status-pill--ready{border-color:var(--local);color:var(--local)}.status-pill--warning{border-color:var(--exposed);color:var(--exposed)}.tooltip{display:inline-flex;position:relative}.tooltip[data-tip]:hover:after{content:attr(data-tip);border-radius:var(--radius);background:var(--ink);width:max-content;max-width:280px;color:var(--surface);font-size:var(--text-s);white-space:normal;padding:6px 10px;position:absolute;top:calc(100% + 8px);right:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.workspace{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:24px;max-width:1440px;margin:0 auto;padding:24px 16px;display:grid}@media (width<=900px){.workspace{grid-template-columns:minmax(0,1fr)}}.pages{flex-direction:column;gap:24px;display:flex}.pages__placeholder{font-family:var(--font-mono);font-size:var(--text-s);color:var(--muted);margin:0}.notice{border:1px solid var(--exposed);border-radius:var(--radius);background:var(--surface);margin:0;padding:12px 16px}.page{margin:0}.page__sheet{border:var(--border);background:var(--surface);position:relative}.page canvas{width:100%;height:auto;display:block}.page__number{font-family:var(--font-mono);font-size:var(--text-s);color:var(--muted);margin-top:6px}.review{border:var(--border);border-radius:var(--radius);background:var(--surface);max-height:calc(100vh - 104px);box-shadow:var(--shadow);padding:16px;position:sticky;top:80px;overflow-y:auto}@media (width<=900px){.review{max-height:none;position:static}}.zone-layer .zone--unmasked{stroke:var(--exposed);stroke-width:1.5px;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.work__debug{max-width:1440px;margin:0 auto;padding:0 16px 48px}.debug{font-size:var(--text-s);color:var(--muted)}.debug>*+*{margin-top:8px}.toggle{align-items:center;gap:8px;display:flex}.toast{z-index:20;border-radius:var(--radius);background:var(--ink);color:var(--surface);box-shadow:var(--shadow);padding:10px 16px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.page__overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.page__overlay rect,.legend rect{stroke-width:1px;vector-effect:non-scaling-stroke}.overlay-block{fill:none;stroke:#787878b3}.overlay-email{--overlay:37 99 235}.overlay-phone{--overlay:22 163 74}.overlay-amount{--overlay:234 88 12}.overlay-percent{--overlay:147 51 234}.overlay-person{--overlay:219 39 119}.overlay-organization{--overlay:202 138 4}:is(.overlay-email,.overlay-phone,.overlay-amount,.overlay-percent,.overlay-person,.overlay-organization){fill:rgb(var(--overlay) / .3);stroke:rgb(var(--overlay))}.legend{flex-wrap:wrap;gap:16px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.legend li{align-items:center;gap:6px;display:flex}.legend svg{width:14px;height:14px}.zone-layer .zone{fill:#0000;stroke:none;pointer-events:all;cursor:pointer}.zone-layer .zone:hover{stroke:var(--mark);stroke-width:3px;vector-effect:non-scaling-stroke}.draw-layer{pointer-events:all;cursor:crosshair;touch-action:none}.manual-area{fill:none;stroke:#2563eb;stroke-width:1.5px;vector-effect:non-scaling-stroke}.manual-area--drawing{fill:#0006;stroke-dasharray:4 3}.review h2{font-size:var(--text-l);margin:0 0 16px;font-weight:600}.review input[type=checkbox]{width:15px;height:15px;accent-color:var(--ink);flex-shrink:0;margin:0}.review__add{margin-bottom:20px}.review__add label{font-size:var(--text-s);margin-bottom:6px;font-weight:500;display:block}.review__add-row{gap:6px;display:flex}.review__add-row input{border:var(--border);border-radius:var(--radius);background:var(--surface);flex:1;min-width:0;padding:5px 8px}.review__add-message{font-size:var(--text-s);color:var(--exposed);margin:6px 0 0}.review__group{border-top:var(--border);padding:10px 0}.review__group-head{align-items:center;gap:8px;display:flex}.review__group-toggle{text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:6px;padding:2px 0;font-weight:600;display:flex}.review__chevron{border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);width:6px;height:6px;transition:transform var(--transition);transform:rotate(45deg)translateY(-2px)}.review__group-toggle[aria-expanded=false] .review__chevron{transform:rotate(-45deg)}.review__count{font-family:var(--font-mono);font-size:var(--text-s);color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:400}.review ul{margin:6px 0 0;padding:0;list-style:none}.review__row{border-radius:var(--radius);transition:background-color var(--transition);align-items:center;gap:8px;padding:3px 4px 3px 23px;display:flex}.review__row:hover,.review__row:focus-within{background:#f2d63b59}.review__row-label{text-align:left;overflow-wrap:anywhere;background:0 0;border:0;flex:1;min-width:0;padding:0}.review__empty{font-size:var(--text-s);color:var(--muted);margin:0;padding:2px 0 2px 23px}.review__remove{font-size:var(--text-s);padding:1px 8px}.zone-layer .zone--highlight{fill:#f2d63b8c;stroke:var(--mark);stroke-width:3px;vector-effect:non-scaling-stroke}.manual-area--highlight{fill:#f2d63b8c;stroke:var(--mark);stroke-width:3px}button,a,input{transition:background-color var(--transition), border-color var(--transition), color var(--transition), opacity var(--transition)}button:hover:not(:disabled){border-color:var(--ink)}.button--primary:hover:not(:disabled){background:#2a2e2c}.link-button:hover:not(:disabled),a:hover{color:var(--ink)}:focus-visible{outline:3px solid var(--mark);outline-offset:1px;box-shadow:0 0 0 5px var(--ink)}input[type=text]:focus-visible{outline-offset:0}.toast{animation:toast-in var(--transition)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}
