@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(./cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(./cinzel-latin-600-normal-CH_LB4su.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(./cinzel-latin-700-normal-Dkw14w9r.woff2)format("woff2"),url(./cinzel-latin-700-normal-C-gK7hA8.woff)format("woff")}@font-face{font-family:IM Fell English;font-style:italic;font-display:swap;font-weight:400;src:url(./im-fell-english-latin-400-italic-DD_ylKHZ.woff2)format("woff2"),url(./im-fell-english-latin-400-italic-hN89MLGX.woff)format("woff")}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./alegreya-sans-latin-400-normal-DtLlO8BS.woff2)format("woff2"),url(./alegreya-sans-latin-400-normal-DmA8jeke.woff)format("woff")}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./alegreya-sans-latin-500-normal-DS713u5J.woff2)format("woff2"),url(./alegreya-sans-latin-500-normal-vXxrTKJT.woff)format("woff")}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sans-latin-700-normal-DEbcy2sF.woff2)format("woff2"),url(./alegreya-sans-latin-700-normal-BnzUNlma.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(./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(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(./ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}:root{--walnut:#1c1613;--walnut-deep:#131009;--vellum:#e8dcc4;--vellum-deep:#d9c9a8;--vellum-shade:#c9b48d;--brass:#b08d4a;--brass-bright:#d4b06a;--brass-dim:#8a6d3a;--oxblood:#8a3530;--verdigris:#3e6257;--verdigris-bright:#5a8a7a;--ink:#2a2118;--ink-soft:#4a3d2e;--shadow-cast:#0000008c;--shadow-deep:#000000b8;--scrim:#000000a8;--candlelight:#d4b06a12;--region-mark:#c0392b;--vertex-first:#4cc2ff;--vertex:#fff;--medallion:radial-gradient(circle at 50% 46%, #ffffff1f 0 34%, transparent 34% 52%, #00000038 52% 56%, transparent 56% 66%, #00000038 66% 71%, #ffffff1a 71% 100%);--font-display:"Cinzel", "Iowan Old Style", Georgia, serif;--font-flavor:"IM Fell English", "Iowan Old Style", Georgia, serif;--font-ui:"Alegreya Sans", "Avenir Next", "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--rule:1px;--radius-sm:4px;--radius:8px;--radius-lg:12px;--track:.13em;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:16px/1.55 var(--font-ui)}*{box-sizing:border-box}body{color:var(--vellum);background-color:var(--walnut);background-image:var(--art-walnut,none), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9 0.02' numOctaves='3'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23g)' opacity='0.5'/%3E%3C/svg%3E");background-blend-mode:overlay, soft-light;background-repeat:repeat;background-size:384px,240px 240px;margin:0}body:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(120% 90% at 50% 28%, var(--candlelight), transparent 62%), radial-gradient(140% 120% at 50% 40%, transparent 38%, var(--shadow-cast) 100%);position:fixed;inset:0}#root{min-height:100svh}.app{z-index:1;max-width:1440px;margin:0 auto;padding:24px 28px 56px;position:relative}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}:focus-visible{outline:2px solid var(--brass-bright);outline-offset:2px;border-radius:var(--radius-sm)}.panel :focus-visible,.vellum :focus-visible{outline-color:var(--verdigris)}.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:.94em;font-weight:500}.flavor{font-family:var(--font-flavor);color:var(--ink-soft);margin:0 0 14px;font-size:15px;font-style:italic;line-height:1.4}.flavor--dark{color:var(--vellum-deep);opacity:.72}.label{letter-spacing:var(--track);color:var(--ink-soft);font-size:12px;font-variant-caps:all-small-caps;font-weight:700;display:block}.app-header{border-bottom:var(--rule) solid var(--brass-dim);flex-wrap:wrap;align-items:baseline;gap:16px 20px;margin:0 0 22px;padding-bottom:14px;display:flex}.wordmark{font-family:var(--font-display);letter-spacing:.04em;color:var(--brass-bright);margin:0;font-size:clamp(26px,3.4vw,34px);font-weight:700;line-height:1}.wordmark span{color:var(--vellum)}.tagline{font-family:var(--font-flavor);color:var(--brass);margin:0;font-size:16px;font-style:italic}.app-header-spacer{flex:1}.autosave-status{color:var(--vellum-deep);opacity:.75;font-size:13px}.stepper-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin:0 0 22px;display:flex}.stepper{flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none;display:flex}.stepper-item{min-width:0;color:var(--vellum);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:9px;padding:7px 14px 9px;transition:border-color .18s,opacity .18s;display:flex}.stepper-numeral{width:26px;height:26px;font-family:var(--font-display);color:var(--brass);opacity:.72;filter:saturate(.55)brightness(.85);flex:none;place-items:center;font-size:13px;font-weight:700;line-height:1;transition:opacity .18s,filter .18s;display:grid}.stepper-numeral--text{border:var(--rule) solid var(--brass-dim);border-radius:var(--radius-sm)}.stepper-numeral img{object-fit:contain;width:100%;height:100%;display:block}.stepper-text{flex-direction:column;gap:1px;min-width:0;display:flex}.stepper-label{letter-spacing:var(--track);font-size:13px;font-variant-caps:all-small-caps;font-weight:500;line-height:1.15}.stepper-reading{font-family:var(--font-mono);color:var(--brass);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.2;overflow:hidden}.stepper-item:hover:not(:disabled){border-bottom-color:var(--brass-dim)}.stepper-item--current{border-bottom-color:var(--brass-bright)}.stepper-item--current .stepper-numeral{opacity:1;filter:none}.stepper-item--current .stepper-label{color:var(--brass-bright);font-weight:700}.stepper-item--disabled{color:var(--vellum-deep);opacity:.38;cursor:not-allowed}@media (width<=720px){.stepper-item{padding:6px 5px 8px}.stepper-item:not(.stepper-item--current) .stepper-text{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.stepper-reading{display:none}}.step-content{margin-top:4px}.panel,.vellum{border:var(--rule) solid var(--vellum-shade);border-radius:var(--radius-lg);color:var(--ink);background-color:var(--vellum);background-image:var(--art-vellum,none);background-blend-mode:multiply;box-shadow:0 10px 30px var(--shadow-cast);background-repeat:repeat;background-size:384px;padding:22px 24px;position:relative}.panel:before,.vellum:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(var(--vellum), var(--vellum));opacity:.85;mix-blend-mode:normal;z-index:-1;position:absolute;inset:0}.panel.calibrate,.panel.crop,.panel.grid-step,.panel.layout,.panel.annotate{padding:16px}.panel h2,.vellum h2,.panel-heading{font-family:var(--font-display);letter-spacing:.05em;color:var(--ink);align-items:center;gap:14px;margin:0 0 4px;font-size:19px;font-weight:600;display:flex}.panel h2:after,.vellum h2:after,.panel-heading:after{content:"";height:var(--rule);background:linear-gradient(90deg, var(--brass), transparent);flex:1}.panel h3,.vellum h3{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);margin:0 0 6px;font-size:15px;font-weight:600}.panel p,.vellum p{color:var(--ink)}.panel,.vellum,.modal{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:var(--verdigris)}.hint{color:var(--ink-soft);margin:0;font-size:14px}.canvas-frame,.calibrate-canvas-wrap,.crop-canvas-wrap,.grid-canvas-wrap,.layout-canvas-wrap{border:var(--rule) solid var(--brass);border-radius:var(--radius);background:var(--walnut-deep);width:100%;height:72vh;min-height:420px;box-shadow:0 0 0 6px var(--walnut-deep), 0 0 46px -6px var(--candlelight), 0 18px 44px var(--shadow-deep);position:relative;overflow:hidden}.crop-canvas-wrap:focus-visible,.calibrate-controls:focus-visible{outline:2px solid var(--brass-bright);outline-offset:6px}.frame-corner{pointer-events:none;z-index:3;border-top:var(--rule) solid var(--brass-dim);border-left:var(--rule) solid var(--brass-dim);opacity:.55;width:86px;height:86px;position:absolute}.frame-corner:after{content:"";background:var(--brass);-webkit-mask-image:var(--art-corner,none);mask-image:var(--art-corner,none);position:absolute;inset:0;-webkit-mask-position:0 0;mask-position:0 0;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.frame-corner--tl{top:6px;left:6px}.frame-corner--tr{top:6px;right:6px;transform:scaleX(-1)}.frame-corner--bl{bottom:6px;left:6px;transform:scaleY(-1)}.frame-corner--br{bottom:6px;right:6px;transform:scale(-1)}@media (width<=700px){.frame-corner{display:none}}.action-bar{border-top:var(--rule) solid var(--brass-dim);flex-wrap:wrap;align-items:center;gap:16px;margin-top:20px;padding-top:16px;display:flex}.action-bar-spacer{flex:1}.seal-chip{border:var(--rule) solid var(--verdigris-bright);background:color-mix(in srgb, var(--verdigris) 22%, transparent);color:var(--vellum);border-radius:999px;align-items:center;gap:11px;padding:7px 16px 7px 8px;font-size:13px;line-height:1.3;display:inline-flex}.seal-chip strong{font-weight:700}.seal-chip--broken{border-color:var(--oxblood);background:color-mix(in srgb, var(--oxblood) 22%, transparent);color:var(--vellum)}.seal-mark{background-color:var(--verdigris);background-image:var(--art-seal-intact,none), var(--medallion);background-position:50%;background-repeat:no-repeat;background-size:cover,cover;border-radius:50%;flex:none;width:30px;height:30px;animation:3.4s ease-in-out infinite seal-pulse}.seal-chip--broken .seal-mark{background-color:var(--oxblood);background-image:var(--art-seal-cracked,none), var(--medallion);animation:none}@keyframes seal-pulse{0%,to{box-shadow:0 0 7px var(--verdigris-bright)}50%{box-shadow:0 0 15px var(--verdigris-bright)}}@media (prefers-reduced-motion:reduce){.seal-mark{animation:none}}.seal-stamp{background-color:var(--verdigris);background-image:var(--art-seal-intact,none), var(--medallion);width:148px;height:148px;filter:drop-shadow(0 4px 14px var(--shadow-cast));background-position:50%;background-repeat:no-repeat;background-size:cover,cover;border-radius:50%;flex:none}.seal-stamp--broken{background-color:var(--oxblood);background-image:var(--art-seal-cracked,none), var(--medallion)}.button{border-radius:var(--radius);border:var(--rule) solid var(--brass-dim);background:color-mix(in srgb, var(--vellum) 8%, transparent);color:var(--vellum);font:inherit;cursor:pointer;padding:9px 20px;font-size:15px;transition:border-color .15s,background-color .15s}.button:hover:not(:disabled){border-color:var(--brass-bright);background:color-mix(in srgb, var(--vellum) 14%, transparent)}.button:disabled{opacity:.45;cursor:not-allowed}.panel .button,.vellum .button{border-color:var(--vellum-shade);background:color-mix(in srgb, var(--ink) 5%, transparent);color:var(--ink)}.panel .button:hover:not(:disabled),.vellum .button:hover:not(:disabled){border-color:var(--brass);background:color-mix(in srgb, var(--ink) 10%, transparent)}.button--primary,.panel .button--primary,.vellum .button--primary,.button--ok,.panel .button--ok,.vellum .button--ok{background:var(--verdigris);border-color:var(--verdigris-bright);color:var(--vellum);font-weight:700}.button--primary:hover:not(:disabled),.panel .button--primary:hover:not(:disabled),.vellum .button--primary:hover:not(:disabled),.button--ok:hover:not(:disabled),.panel .button--ok:hover:not(:disabled),.vellum .button--ok:hover:not(:disabled){background:color-mix(in srgb, var(--verdigris) 78%, var(--verdigris-bright));border-color:var(--verdigris-bright)}.button--ghost,.panel .button--ghost,.vellum .button--ghost{color:var(--brass-bright);background:0 0;border-color:#0000;padding-left:8px;padding-right:8px}.button--ghost:hover:not(:disabled),.panel .button--ghost:hover:not(:disabled),.vellum .button--ghost:hover:not(:disabled){background:0 0;border-color:#0000;text-decoration:underline}.button--danger,.panel .button--danger,.vellum .button--danger{border-color:var(--oxblood);color:var(--oxblood)}.notice{border-radius:var(--radius);border:var(--rule) solid var(--brass);background:color-mix(in srgb, var(--brass) 12%, transparent);color:var(--ink);margin-top:14px;padding:10px 14px;font-size:14px}.notice--error{border-color:var(--oxblood);background:color-mix(in srgb, var(--oxblood) 14%, transparent);color:var(--ink)}.dropzone{border:2px dashed var(--vellum-shade);border-radius:var(--radius-lg);text-align:center;color:var(--ink-soft);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:64px 24px;transition:border-color .15s,background-color .15s;display:flex}.dropzone--active{border-color:var(--verdigris);background:color-mix(in srgb, var(--verdigris) 10%, transparent)}.dropzone--locked{opacity:.6;pointer-events:none}.file-button{cursor:pointer;display:inline-block;position:relative}.file-button input[type=file]{opacity:0;cursor:pointer;width:1px;height:1px;position:absolute;inset:0}.file-button:focus-within{outline:2px solid var(--brass-bright);outline-offset:2px}.file-button.is-disabled{opacity:.45;pointer-events:none}.modal-overlay{z-index:10;background:var(--scrim);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{border:var(--rule) solid var(--vellum-shade);border-radius:var(--radius-lg);max-width:720px;max-height:80vh;color:var(--ink);background-color:var(--vellum);background-image:var(--art-vellum,none);background-blend-mode:multiply;box-shadow:0 24px 60px var(--shadow-deep);background-size:384px;padding:24px;overflow-y:auto}.modal h2{font-family:var(--font-display);letter-spacing:.05em;margin:0 0 14px;font-size:19px}.page-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-bottom:16px;display:grid}.page-thumb{border:var(--rule) solid var(--vellum-shade);border-radius:var(--radius);background:var(--vellum-deep);color:var(--ink);font:inherit;font-family:var(--font-mono);cursor:pointer;flex-direction:column;align-items:center;gap:6px;padding:8px;font-size:12px;display:flex}.page-thumb:hover:not(:disabled){border-color:var(--verdigris)}.page-thumb img{border-radius:var(--radius-sm);max-width:100%}.mapcanvas{touch-action:none;width:100%;height:100%;position:relative;overflow:hidden}.mapcanvas-canvas{cursor:grab;display:block}.loupe{border:2px solid var(--brass);box-shadow:0 6px 20px var(--shadow-deep), inset 0 0 0 1px var(--walnut-deep);z-index:5;border-radius:50%}.calibrate{flex-direction:column;gap:16px;display:flex}.calibrate-tabs{gap:8px;display:flex}.calibrate-controls{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.nudge-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.nudge-row .button{padding:5px 10px;font-size:13px}.nudge-row .nudge-label{flex:1 0 100%}.nudge-label{letter-spacing:var(--track);color:var(--ink-soft);font-size:12px;font-variant-caps:all-small-caps;font-weight:700}.nudge-value{text-align:center;min-width:66px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:500}.calibrate-footer{border-top:var(--rule) solid var(--vellum-shade);justify-content:space-between;align-items:center;gap:16px;padding-top:16px;display:flex}.calibrate-readout{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink);font-size:15px}.calibrate input[type=number],.panel input[type=text],.panel input[type=number]{border:var(--rule) solid var(--vellum-shade);border-radius:var(--radius-sm);background:var(--vellum-deep);color:var(--ink);font-family:var(--font-mono);padding:6px 10px;font-size:14px}.calibrate-why{color:var(--ink-soft);font-size:14px}.calibrate-why p{color:var(--ink-soft);margin:0 0 8px}.calibrate-why ul{flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.calibrate-why strong{color:var(--ink)}.scale-presets{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.scale-presets-label{letter-spacing:var(--track);color:var(--ink-soft);font-size:12px;font-variant-caps:all-small-caps;font-weight:700}.crop{flex-direction:column;gap:16px;display:flex}.crop-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.crop-orient{align-items:center;gap:8px;display:flex}.crop-pages{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink);font-size:14px}.crop-snap-row{align-items:center;gap:8px;display:flex}.crop-snap-row .chip{cursor:default}.crop-resnap-notice{border:var(--rule) solid var(--brass);border-radius:var(--radius);background:color-mix(in srgb, var(--brass) 14%, transparent);color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:flex}.grid-step{flex-direction:column;gap:16px;display:flex}.grid-step-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}.grid-controls-column{flex-direction:column;gap:18px;display:flex}.grid-controls{flex-direction:column;gap:18px;padding:2px;display:flex}.control-hint{color:var(--ink-soft);margin:0;font-size:12px;line-height:1.4}.dpad{grid-template-rows:repeat(3,32px);grid-template-columns:repeat(3,32px);justify-content:start;gap:4px;display:grid}.dpad-btn{border:var(--rule) solid var(--vellum-shade);border-radius:var(--radius-sm);background:var(--vellum-deep);color:var(--ink);font:inherit;cursor:pointer;justify-content:center;align-items:center;font-size:14px;display:flex}.dpad-btn:hover{border-color:var(--verdigris)}.dpad-up{grid-area:1/2}.dpad-left{grid-area:2/1}.dpad-right{grid-area:2/3}.dpad-down{grid-area:3/2}.grid-controls-group{flex-direction:column;gap:8px;display:flex}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip{border:var(--rule) solid var(--vellum-shade);background:var(--vellum-deep);color:var(--ink);font:inherit;letter-spacing:.06em;cursor:pointer;border-radius:999px;padding:6px 14px;font-size:13px;font-variant-caps:all-small-caps;transition:border-color .15s,background-color .15s}.chip:hover:not(:disabled){border-color:var(--verdigris)}.chip--active{background:var(--verdigris);border-color:var(--verdigris-bright);color:var(--vellum);font-weight:700}.chip--custom{cursor:default;opacity:.9}.chip--custom:not(.chip--active){opacity:.5}.radio-row{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.panel input[type=range],.grid-controls input[type=range]{accent-color:var(--brass);flex:1}.grid-controls input[type=color]{border:var(--rule) solid var(--vellum-shade);border-radius:var(--radius-sm);background:var(--vellum-deep);width:40px;height:28px;padding:0}.annotate-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.annotate-history{gap:6px;display:flex}.annotate-history .chip{padding:4px 10px;font-size:12px}.annotate-history .chip:disabled{opacity:.4;cursor:default}.icon-palette{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.icon-chip{border:var(--rule) solid var(--vellum-shade);border-radius:var(--radius-sm);background:var(--vellum-deep);color:var(--ink);font:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:4px;padding:6px 2px;display:flex}.icon-chip:hover{border-color:var(--verdigris)}.icon-chip--active{border-color:var(--verdigris);background:color-mix(in srgb, var(--verdigris) 18%, var(--vellum-deep))}.icon-chip-label{text-overflow:ellipsis;white-space:nowrap;text-align:center;max-width:100%;color:var(--ink-soft);font-size:10px;line-height:1.1;overflow:hidden}.icon-chip--active .icon-chip-label{color:var(--ink);font-weight:700}.icon-glyph{flex:none;display:block}.annotate-editor{border:var(--rule) solid var(--verdigris);border-radius:var(--radius);background:color-mix(in srgb, var(--verdigris) 8%, var(--vellum-deep));flex-direction:column;gap:8px;padding:10px;display:flex}.annotate-textarea{resize:vertical;border:var(--rule) solid var(--vellum-shade);border-radius:var(--radius-sm);background:var(--vellum);width:100%;color:var(--ink);font:inherit;padding:8px;font-size:13px}.annotate-textarea:focus{border-color:var(--verdigris);outline:none}.annotate-editor-actions{gap:8px;display:flex}.annotate-delete,.panel .annotate-delete{border-color:var(--oxblood);color:var(--oxblood);margin-left:auto}.annotate-list{flex-direction:column;gap:3px;max-height:34vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.annotate-row{border:var(--rule) solid transparent;border-radius:var(--radius-sm);background:var(--vellum-deep);align-items:center;gap:4px;display:flex}.annotate-row--selected{border-color:var(--verdigris);background:color-mix(in srgb, var(--verdigris) 12%, var(--vellum-deep))}.annotate-row-main{min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.annotate-row-num{border:var(--rule) solid var(--ink-soft);width:19px;height:19px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink-soft);border-radius:50%;flex:none;place-items:center;font-size:11px;display:grid}.annotate-row-region{border:1.5px dashed var(--oxblood);background:color-mix(in srgb, var(--oxblood) 18%, transparent);border-radius:3px;flex:none;width:18px;height:14px}.annotate-row-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.annotate-row-btn{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:flex}.annotate-row-btn:hover{background:color-mix(in srgb, var(--ink) 10%, transparent);color:var(--ink)}.annotate-row-btn[aria-pressed=true]{color:var(--verdigris)}.annotate-row-btn--danger:hover{color:var(--oxblood)}.export-summary{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.export-summary-facts{flex:1;grid-template-columns:auto 1fr;align-items:baseline;gap:6px 18px;min-width:240px;margin:0;display:grid}.export-summary-facts dt{letter-spacing:var(--track);color:var(--ink-soft);font-size:12px;font-variant-caps:all-small-caps;font-weight:700}.export-summary-facts dd{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink);margin:0;font-weight:500}@media (width<=900px){.grid-step-layout{grid-template-columns:1fr}.canvas-frame,.grid-canvas-wrap,.crop-canvas-wrap,.calibrate-canvas-wrap,.layout-canvas-wrap{height:60vh;min-height:320px}}@media (width<=420px){.app{padding:16px 12px 40px}.panel,.vellum{padding:16px 14px}}
