@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d57a24ec54448a8e-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/bc08e10e1c60a660-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7c309a1f4c99f6b1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9816a0e0ed309b6c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Atkinson Hyperlegible Fallback;src:local("Arial");ascent-override:95.60%;descent-override:29.18%;line-gap-override:0.00%;size-adjust:99.37%}.__className_de3fe8{font-family:Atkinson Hyperlegible,Atkinson Hyperlegible Fallback;font-style:normal}.__variable_de3fe8{--font-atkinson:"Atkinson Hyperlegible","Atkinson Hyperlegible Fallback"}:host,:root{--ol-background-color:white;--ol-accent-background-color:#F5F5F5;--ol-subtle-background-color:rgba(128,128,128,0.25);--ol-partial-background-color:rgba(255,255,255,0.75);--ol-foreground-color:#333333;--ol-subtle-foreground-color:#666666;--ol-brand-color:#00AAFF}.ol-box{box-sizing:border-box;border-radius:2px;border:1.5px solid var(--ol-background-color);background-color:var(--ol-partial-background-color)}.ol-mouse-position{top:8px;right:8px;position:absolute}.ol-scale-line{background:var(--ol-partial-background-color);border-radius:4px;bottom:8px;left:8px;padding:2px;position:absolute}.ol-scale-line-inner{border:1px solid var(--ol-subtle-foreground-color);border-top:none;color:var(--ol-foreground-color);font-size:10px;text-align:center;margin:1px;will-change:contents,width;transition:all .25s}.ol-scale-bar{position:absolute;bottom:8px;left:8px}.ol-scale-bar-inner{display:flex}.ol-scale-step-marker{width:1px;height:15px;background-color:var(--ol-foreground-color);float:right;z-index:10}.ol-scale-step-text{bottom:-5px;font-size:10px;z-index:11}.ol-scale-step-text,.ol-scale-text{position:absolute;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color)}.ol-scale-text{font-size:12px;text-align:center;bottom:25px}.ol-scale-singlebar{position:relative;height:10px;z-index:9;box-sizing:border-box;border:1px solid var(--ol-foreground-color)}.ol-scale-singlebar-even{background-color:var(--ol-subtle-foreground-color)}.ol-scale-singlebar-odd{background-color:var(--ol-background-color)}.ol-unsupported{display:none}.ol-unselectable,.ol-viewport{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ol-viewport canvas{all:unset;overflow:hidden}.ol-viewport{touch-action:pan-x pan-y}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;user-select:text}.ol-grabbing{cursor:-webkit-grabbing;cursor:grabbing}.ol-grab{cursor:move;cursor:-webkit-grab;cursor:grab}.ol-control{position:absolute;background-color:var(--ol-subtle-background-color);border-radius:4px}.ol-zoom{top:.5em;left:.5em}.ol-rotate{top:.5em;right:.5em;transition:opacity .25s linear,visibility 0s linear}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{right:.5em;top:.5em}.ol-control button{display:block;margin:1px;padding:0;color:var(--ol-subtle-foreground-color);font-weight:700;text-decoration:none;font-size:inherit;text-align:center;height:1.375em;width:1.375em;line-height:.4em;background-color:var(--ol-background-color);border:none;border-radius:2px}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{display:block;font-weight:400;will-change:transform}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:focus,.ol-control button:hover{text-decoration:none;outline:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color)}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;bottom:.5em;right:.5em;max-width:calc(100% - 1.3em);display:flex;flex-flow:row-reverse;align-items:center}.ol-attribution a{color:var(--ol-subtle-foreground-color);text-decoration:none}.ol-attribution ul{margin:0;padding:1px .5em;color:var(--ol-foreground-color);text-shadow:0 0 2px var(--ol-background-color);font-size:12px}.ol-attribution li{display:inline;list-style:none}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button{flex-shrink:0}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:var(--ol-partial-background-color)}.ol-attribution.ol-uncollapsible{bottom:0;right:0;border-radius:4px 0 0}.ol-attribution.ol-uncollapsible img{margin-top:-.2em;max-height:1.6em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{top:4.5em;left:.5em;height:200px}.ol-zoomslider button{position:relative;height:10px}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{left:.5em;bottom:.5em}.ol-overviewmap.ol-uncollapsible{bottom:0;left:0;border-radius:0 4px 0 0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:block}.ol-overviewmap .ol-overviewmap-map{border:1px solid var(--ol-subtle-foreground-color);height:150px;width:150px}.ol-overviewmap:not(.ol-collapsed) button{bottom:0;left:0;position:absolute}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:var(--ol-subtle-background-color)}.ol-overviewmap-box{border:1.5px dotted var(--ol-subtle-foreground-color)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}.ol-overviewmap .ol-viewport:hover{cursor:pointer}:root{color-scheme:light;--page:#eef1f0;--surface:#fbfcfb;--raised:#ffffff;--ink:#1e2833;--ink-2:#4e5b67;--muted:#7c8994;--line:#dde3e1;--line-strong:#c5cdca;--accent:#b4306c;--accent-soft:#f6e3ec;--on-accent:#ffffff;--error:#b42318;--night:#141a21;--glass:rgba(20,26,33,0.86);--glass-ink:#e8edf0;--glass-ink-2:#a9b4bd;--glass-line:rgba(255,255,255,0.12);--box:#ff4f98;--status-reviewed:#2a78d6;--status-annotated:#1baf7a;--status-needs_attention:#eb6834;--status-new:#b9c1bd;--radius:6px;--radius-panel:10px;--shadow:0 6px 24px rgba(20,26,33,0.16)}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])){color-scheme:dark;--page:#11161c;--surface:#192029;--raised:#1f2731;--ink:#e8edf0;--ink-2:#b3bec7;--muted:#84909a;--line:#2a333d;--line-strong:#3a4550;--accent:#f06aa5;--accent-soft:#3a2230;--on-accent:#1a0d13;--error:#ff8a80;--status-reviewed:#3987e5;--status-annotated:#199e70;--status-needs_attention:#d95926;--status-new:#59646d;--shadow:0 6px 24px rgba(0,0,0,0.45)}}:root[data-theme=dark]{color-scheme:dark;--page:#11161c;--surface:#192029;--raised:#1f2731;--ink:#e8edf0;--ink-2:#b3bec7;--muted:#84909a;--line:#2a333d;--line-strong:#3a4550;--accent:#f06aa5;--accent-soft:#3a2230;--on-accent:#1a0d13;--error:#ff8a80;--status-reviewed:#3987e5;--status-annotated:#199e70;--status-needs_attention:#d95926;--status-new:#59646d;--shadow:0 6px 24px rgba(0,0,0,0.45)}*{box-sizing:border-box}body,html{margin:0;height:100%}body{display:flex;flex-direction:column;background:var(--page);color:var(--ink);font:15px/1.5 var(--font,system-ui,sans-serif);-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}h1{font-size:26px;line-height:1.2;margin:0;letter-spacing:-.01em}h1,h2{font-weight:700}h2{font-size:17px;line-height:1.3;margin:0 0 10px}p{margin:0}.muted{color:var(--muted)}.small{font-size:13px}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.msg{color:var(--error);min-height:1.5em}.msg.ok{color:var(--ink-2)}.centred{margin:20vh auto;text-align:center;padding:0 16px;display:grid;grid-gap:14px;gap:14px;justify-items:center}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}button,input,select{font:inherit;color:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 12px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--raised);color:var(--ink);font-size:14px;cursor:pointer;white-space:nowrap;transition:background-color .12s,border-color .12s}button:hover:not(:disabled){border-color:var(--ink-2)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:700}button.primary:hover:not(:disabled){filter:brightness(1.08);border-color:var(--accent)}button.ghost{background:none;border-color:transparent;color:var(--ink-2)}button.ghost:hover:not(:disabled){background:var(--accent-soft);color:var(--ink);border-color:transparent}button.icon{width:32px;padding:0}button.danger:hover:not(:disabled){border-color:var(--error);color:var(--error)}button.danger.solid{background:#c22d1d;border-color:#c22d1d;color:#fff}button.danger.solid:hover:not(:disabled){filter:brightness(1.1);color:#fff}.danger-zone{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:0 0 16px;padding:12px 16px;border:1px solid var(--line-strong);border-left:3px solid var(--error);border-radius:var(--radius);background:var(--surface)}.danger-zone p{margin:0;max-width:70ch;color:var(--ink-2)}.danger-zone .row{display:flex;gap:8px}input,select{height:32px;padding:0 10px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--raised);font-size:14px;min-width:0}input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}input[type=checkbox]{height:16px;width:16px;padding:0;accent-color:var(--accent)}.field{display:grid;grid-gap:4px;gap:4px;font-size:13px;color:var(--ink-2)}label.check{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.icon-svg{width:16px;height:16px;flex:none}.nav{align-items:center;gap:28px;flex-wrap:wrap;padding:0 20px;min-height:52px;background:var(--surface);border-bottom:1px solid var(--line)}.brand,.nav{display:flex}.brand{align-items:baseline;gap:8px;font-weight:700;font-size:16px}.brand span{font-weight:400;color:var(--muted)}.nav nav{display:flex;gap:2px;flex:1 1;align-self:stretch}.nav nav a{display:flex;align-items:center;padding:0 12px;color:var(--ink-2);text-decoration:none;border-bottom:2px solid transparent}.nav nav a:hover{color:var(--ink)}.nav nav a.active{color:var(--ink);font-weight:700;border-bottom-color:var(--accent)}.account{display:flex;align-items:center;gap:10px;font-size:14px}.role{padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:700}.page{flex:1 0 auto;width:100%;max-width:1320px;margin:0 auto;padding:28px 24px 48px}.page:has(.fullbleed){flex:1 1;position:relative;padding:0;max-width:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.page-head p{color:var(--ink-2);margin-top:6px;max-width:70ch}.section{margin-top:36px}.card-form{display:grid;grid-gap:14px;gap:14px;width:min(360px,calc(100% - 32px));margin:14vh auto;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.card-form h1{font-size:22px}.card-form p{color:var(--ink-2)}.card-form button.primary{height:38px;margin-top:4px}.swatch{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}.swatch.dashed{background:none!important;border:2px dashed var(--status-needs_attention)}.chip{display:inline-flex;gap:6px;white-space:nowrap}.chip,.legend{align-items:center}.legend{display:flex;gap:6px 16px;flex-wrap:wrap;color:var(--ink-2);font-size:13px}.statusbar{display:flex;gap:2px;height:8px;min-width:120px}.statusbar span{border-radius:4px}.progress-figures{display:flex;flex-wrap:wrap;gap:10px 36px}.progress-figures div{display:grid;grid-gap:2px;gap:2px}.progress-figures strong{font-size:22px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.facts{display:flex;flex-wrap:wrap;gap:6px 28px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);color:var(--ink-2);font-size:14px}.facts b{color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:9px 14px;text-align:left;vertical-align:middle}th{color:var(--muted);font-weight:400;font-size:13px;white-space:nowrap}td,th{border-bottom:1px solid var(--line)}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:color-mix(in srgb,var(--accent-soft) 45%,transparent)}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}td a{text-decoration:none;color:var(--ink);font-weight:700}td a:hover{color:var(--accent)}td .path{display:block;color:var(--muted);font-weight:400;font-size:12px}td.actions{text-align:right;white-space:nowrap}td.actions>*+*{margin-left:6px}td input{width:100%;max-width:280px}.toolbar-row{display:flex;gap:12px 24px;flex-wrap:wrap;align-items:flex-end;margin-bottom:18px}.chips{display:inline-flex;gap:4px;flex-wrap:wrap}.chips button{height:30px;border-radius:999px;padding:0 12px}.chips button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--surface)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:18px 14px;gap:18px 14px}.thumb{display:grid;grid-gap:6px;gap:6px;color:inherit;text-decoration:none}.thumb figure{position:relative;margin:0;border-radius:8px;overflow:hidden;background:var(--line);aspect-ratio:3/2;outline:2px solid transparent;outline-offset:2px;transition:outline-color .12s}.thumb:focus-visible figure,.thumb:hover figure{outline-color:var(--accent)}.thumb:focus-visible{outline:none}.thumb figure>img{display:block;width:100%;height:100%;object-fit:cover}.thumb .badge{position:absolute;right:6px;bottom:6px;padding:1px 7px;border-radius:999px;background:rgba(20,26,33,.78);color:#fff;font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.thumb .badge.unknown{right:auto;left:6px;border:1px dashed #ff8a4c;color:#ffd2bd}.swatch.dashed.unknown{border-color:#e2602a}.thumb .name{font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thumb .meta{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted)}.pager{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:28px}.empty{padding:48px 16px;text-align:center;color:var(--ink-2);background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-panel)}.fullbleed,.fullbleed .ol-map{position:absolute;inset:0}.map-page{--list-width:288px}.map-page .ol-map{right:var(--list-width)}.inview{position:absolute;top:0;right:0;bottom:0;width:var(--list-width);display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--line)}.inview-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:14px 16px 10px;border-bottom:1px solid var(--line)}.inview-head h2{margin:0;font-size:15px}.inview-head .muted{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.inview-list{flex:1 1;overflow-y:auto;padding:12px 14px 16px}.inview-list>p{margin:0}.inview-list ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:14px;gap:14px}.inview-list button{all:unset;box-sizing:border-box;display:grid;grid-gap:5px;gap:5px;width:100%;cursor:pointer}.inview-list .pic{display:block;aspect-ratio:3/2;border-radius:8px;overflow:hidden;background:var(--line);outline:2px solid transparent;outline-offset:2px;transition:outline-color .12s}.inview-list .pic img{display:block;width:100%;height:100%;object-fit:cover}.inview-list button:focus-visible .pic,.inview-list button:hover .pic{outline-color:var(--accent)}.inview-list button[aria-current=true] .pic{outline:3px solid var(--accent)}.inview-list .name{font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inview-list .meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.inview-list .more{padding:14px 0 4px;text-align:center}.spinner{display:inline-block;width:14px;height:14px;margin-right:6px;vertical-align:-2px;border-radius:50%;border:2px solid var(--line-strong);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:760px){.map-page{--list-width:0px}.inview{display:none}}.upload-form{display:grid;grid-gap:16px;gap:16px;max-width:760px}.dropzone{position:relative;display:grid;grid-gap:4px;gap:4px;place-items:center;text-align:center;padding:36px 16px;border:2px dashed var(--line-strong);border-radius:var(--radius-panel);background:var(--surface);cursor:pointer;transition:border-color .12s,background .12s}.dropzone.over,.dropzone:focus-within,.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-list{list-style:none;margin:0;padding:0;display:grid;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.upload-list li{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(110px,200px) auto;grid-gap:12px;gap:12px;align-items:center;padding:6px 12px;min-height:40px;font-size:14px}.upload-list li+li{border-top:1px solid var(--line)}.upload-list .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.upload-list .size{color:var(--muted);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.upload-list .state{color:var(--ink-2);font-size:13px}.upload-list li.failed .state,.upload-list li.skipped .state{color:var(--error)}.upload-list progress{width:100%;height:8px;accent-color:var(--accent)}.upload-form .row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.upload-status.failed{color:var(--error)}.upload-status.done{color:var(--ink);font-weight:700}.float{position:absolute;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow)}.layers{left:12px;top:12px;max-width:calc(100% - 24px - 344px);padding:8px 12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:14px}.layers-title{display:flex;align-items:baseline;gap:8px;white-space:nowrap}.layers h2{margin:0;font-size:15px}.layers select{max-width:260px}.layers-toggles{display:flex;flex-wrap:wrap;gap:4px 14px}.layers .msg{flex-basis:100%}.map-corner{position:absolute;left:12px;bottom:12px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:calc(100% - 24px - 60px);pointer-events:none}.map-corner>*{pointer-events:auto}.legend-box{position:static;padding:8px 10px}.legend-box .legend{flex-direction:column;align-items:flex-start;gap:4px;font-size:12px}.map-hint{margin:0;padding:3px 8px;border-radius:4px;font-size:12px;color:var(--ink-2);background:color-mix(in srgb,var(--surface) 85%,transparent)}@media (max-width:760px){.layers{max-width:calc(100% - 24px)}.map-hint{display:none}}.info-panel{right:calc(var(--list-width, 0px) + 12px);top:12px;width:min(320px,calc(100% - 24px));max-height:calc(100% - 24px);overflow:auto;padding:14px 16px;display:grid;grid-gap:12px;gap:12px}.info-panel img{width:100%;border-radius:6px;display:block}.info-panel .crop{width:100%;height:auto;aspect-ratio:1}.info-panel .crop img{border-radius:0}.bird-photos h3{margin:0 0 4px;font-size:13px;color:var(--ink-2)}.bird-photos ul{margin:0;padding:0;list-style:none;display:grid;grid-gap:2px;gap:2px;font-size:14px;max-height:160px;overflow-y:auto}.info-panel .head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.info-panel .head strong{overflow-wrap:anywhere}.facts-list{display:grid;grid-template-columns:auto 1fr;grid-gap:4px 14px;gap:4px 14px;margin:0;font-size:14px}.facts-list dt{color:var(--muted)}.facts-list dd{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.tooltip{position:absolute;pointer-events:none;padding:4px 8px;font-size:13px;background:var(--ink);color:var(--surface);border-radius:4px;white-space:nowrap;transform:translate(12px,12px)}.ol-map .ol-attribution{font-size:11px}.ol-map .ol-zoom{left:auto;right:12px;top:auto;bottom:36px}.ol-map .ruler-control{right:12px;bottom:100px}.ol-map .ruler-control button{display:grid;place-items:center}.ol-map .ruler-control button[aria-pressed=true]{background:var(--accent);color:#fff}.workbench{--panel-width:320px;background:var(--night);color:var(--glass-ink);--ink:var(--glass-ink);--ink-2:var(--glass-ink-2);--muted:var(--glass-ink-2);--line:var(--glass-line)}.workbench.panel-closed{--panel-width:0px}.workbench .ol-map{right:var(--panel-width)}.workbench button{background:rgba(255,255,255,.06);border-color:var(--glass-line);color:var(--glass-ink)}.workbench button:hover:not(:disabled){background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.28)}.workbench button.ghost{background:none;border-color:transparent}.workbench button.ghost:hover:not(:disabled){background:rgba(255,255,255,.1)}.workbench button.primary{background:var(--box);border-color:var(--box);color:#1a0d13}.workbench input,.workbench select{background:rgba(255,255,255,.06);border-color:var(--glass-line);color:var(--glass-ink)}.workbench select option{background:var(--night)}.workbench :focus-visible{outline-color:var(--box)}.glass{position:absolute;background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-line);border-radius:var(--radius-panel)}.bottombar{left:12px;bottom:12px;right:calc(var(--panel-width) + 12px);display:flex;align-items:center;gap:6px 14px;padding:4px 6px;flex-wrap:wrap;z-index:2}.bottombar .zoom{display:inline-flex;align-items:center;gap:2px}.bottombar .where{display:flex;align-items:center;gap:4px;min-width:0;flex:1 1;overflow:hidden;font-size:14px}.bottombar .crumb-wrap{display:inline-flex;align-items:center;gap:4px;min-width:0;flex:0 1 auto}.bottombar .crumb{color:var(--glass-ink-2);text-decoration:none;min-width:3em;max-width:24ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottombar .crumb:hover{color:var(--glass-ink);text-decoration:underline}.bottombar .sep{color:var(--glass-ink-2);flex:none}.bottombar .file{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:8em;flex:0 0.2 auto}.bottombar .count{color:var(--glass-ink-2);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.bottombar .step{gap:2px}.bottombar .step,.presence{display:inline-flex;align-items:center}.presence{gap:6px;padding:3px 10px 3px 8px;border-radius:999px;background:rgba(235,104,52,.18);color:#ffb08f;font-size:13px;white-space:nowrap}.presence:before{content:"";width:8px;height:8px;border-radius:50%;background:#eb6834}.status-control{position:relative}.seg{display:inline-flex;padding:3px;gap:2px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid var(--glass-line)}.workbench .seg button{height:28px;padding:0 10px;background:none;border:0;color:var(--glass-ink-2);font-size:13px}.workbench .seg button:hover:not(:disabled){background:rgba(255,255,255,.1);color:var(--glass-ink)}.workbench .seg button[aria-pressed=true]{background:rgba(255,255,255,.16);color:#fff;font-weight:700}.sidepanel .seg{display:flex;flex-wrap:wrap}.workbench .sidepanel .seg button{flex:1 0 auto}.workbench .sidepanel .seg[aria-label="Wing spread"] button{padding:0 5px}.attention-form{display:grid;grid-gap:10px;gap:10px;font-size:14px}.attention-form .row{display:flex;gap:8px;justify-content:flex-end}.sidepanel h2 a{font-weight:400;color:var(--box);text-decoration:none}.sidepanel h2 a:hover{text-decoration:underline}.sidepanel{position:absolute;top:0;right:0;bottom:0;width:var(--panel-width);background:#182029;border-left:1px solid var(--glass-line);display:flex;flex-direction:column;overflow:hidden}.panel-closed .sidepanel{display:none}.sidepanel .scroll{flex:1 1;overflow-y:auto}.sidepanel section{padding:14px 16px;border-bottom:1px solid var(--glass-line);display:grid;grid-gap:10px;gap:10px}.sidepanel h2{margin:0;font-size:13px;font-weight:700;color:var(--glass-ink-2);display:flex;justify-content:space-between;align-items:center;gap:8px}.sidepanel h2 .n{font-weight:400;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.box-list,.species-grid{display:grid;grid-gap:2px;gap:2px;margin:0;padding:0;list-style:none}.box-list{max-height:220px;overflow-y:auto}.workbench .box-list button,.workbench .species-grid button{width:100%;justify-content:flex-start;gap:10px;height:32px;padding:0 8px;background:none;border-color:transparent;font-size:14px}.workbench .box-list button:hover:not(:disabled),.workbench .species-grid button:hover:not(:disabled){background:rgba(255,255,255,.08);border-color:transparent}.workbench .species-grid button[aria-pressed=true]{background:rgba(255,79,152,.16);border-color:rgba(255,79,152,.55);color:#fff}.workbench .box-list button[aria-pressed=true]{background:rgba(255,255,255,.14);color:#fff}.key{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:4px;border:1px solid var(--glass-line);color:var(--glass-ink-2);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.box-list .name,.species-grid .name{flex:1 1;text-align:left;overflow:hidden;text-overflow:ellipsis}.species-grid .name{max-width:18ch;white-space:nowrap}.tally{color:var(--glass-ink-2);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.add-row{display:flex;gap:6px}.add-row input{flex:1 1}.selected-box{grid-template-columns:1fr auto}.box-attrs,.selected-box{display:grid;grid-gap:8px;gap:8px}.box-attrs{font-size:14px}.attr-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.attr-row>span{color:var(--glass-ink-2);font-size:13px}.species-bar{top:12px;left:12px;max-width:calc(100% - var(--panel-width) - 76px);padding:6px 8px 8px;display:grid;grid-gap:4px;gap:4px;z-index:2}.species-bar-title{padding:0 8px;font-size:12px;font-weight:700;color:var(--glass-ink-2)}.species-bar p{margin:0;padding:0 8px}.species-grid{grid-template-columns:repeat(var(--cols,5),auto);column-gap:4px}.species-bar .add-row input{min-width:0}@media (max-width:760px){.species-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.species-bar{max-width:calc(100% - 76px)}}.note{padding:8px 10px;border-radius:var(--radius);background:rgba(235,104,52,.14);color:#ffc6ae}.note,.sidepanel .facts-list{font-size:13px}.note.with-action{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px dashed rgba(255,138,76,.6)}.note.with-action button{height:28px;padding:0 10px;color:#ffd2bd;flex:none}.workbench .species-grid button.unknown{color:var(--glass-ink-2)}.workbench .species-grid button.unknown[aria-pressed=true]{background:rgba(255,138,76,.14);border:1px dashed #ff8a4c;color:#fff}.box-list .name.unknown{color:#ffb08a}.removed-pill{padding:1px 8px;border-radius:999px;border:1px solid var(--glass-line);color:var(--glass-ink-2);font-size:12px;white-space:nowrap}.removed-note{display:grid;grid-gap:10px;gap:10px;padding:10px 12px;border-radius:var(--radius);background:rgba(255,255,255,.06);border:1px solid var(--glass-line);font-size:13px;color:var(--glass-ink-2)}.removed-note p{margin:0;line-height:1.45}.removed-note strong{color:var(--glass-ink)}.removed-note .row{display:flex;gap:8px;flex-wrap:wrap}.remove-photo{justify-self:start;color:var(--glass-ink-2)}.history{display:grid;grid-gap:2px;gap:2px;margin:0;padding:0;list-style:none;max-height:300px;overflow-y:auto;font-size:13px}.history li{display:grid;grid-template-columns:10px 1fr auto;grid-gap:10px;gap:10px;align-items:baseline;padding:5px 8px;border-radius:6px}.history .swatch{transform:translateY(1px)}.history .swatch.box{background:none;border:2px solid #ff4f98;border-radius:2px}.history .what{color:var(--glass-ink-2);line-height:1.4;overflow-wrap:anywhere}.history .what b{color:var(--glass-ink);font-weight:700}.workbench .history button.what{all:unset;color:var(--glass-ink-2);line-height:1.4;cursor:pointer;overflow-wrap:anywhere}.workbench .history button.what:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}.workbench .history button.what:focus-visible{outline:2px solid var(--box);outline-offset:2px;border-radius:2px}.history time{color:var(--glass-ink-2);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.minimap-map{height:190px;border-radius:8px;overflow:hidden;background:#0e1318}.minimap-empty{height:72px;display:grid;place-items:center;border-radius:8px;border:1px dashed var(--glass-line);color:var(--glass-ink-2);font-size:13px}.panel-toggle{top:12px;right:calc(var(--panel-width) + 12px);padding:4px;z-index:2}.bottombar .coords{padding:0 10px;font-size:12px;color:var(--glass-ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:132px}.toast{left:calc((100% - var(--panel-width)) / 2);bottom:64px;transform:translateX(-50%);max-width:min(520px,calc(100% - var(--panel-width) - 24px));padding:10px 14px;font-size:14px;border-left:3px solid var(--box);z-index:3}.help{right:calc(var(--panel-width) + 12px);bottom:56px;width:min(320px,calc(100% - 24px));padding:14px 16px;display:grid;grid-gap:10px;gap:10px;font-size:13px;z-index:3}.help dl{display:grid;grid-template-columns:auto 1fr;grid-gap:7px 12px;gap:7px 12px;margin:0;align-items:center}.help dt{display:flex;gap:4px}.help dd{margin:0;color:var(--glass-ink-2)}.canvas-empty{position:absolute;inset:0;right:var(--panel-width);display:grid;place-items:center;padding:24px;text-align:center;color:var(--glass-ink-2);background:var(--night)}@media (max-width:760px){.workbench{--panel-width:0px}.workbench .sidepanel{width:100%;z-index:4}.workbench .panel-toggle{right:12px;z-index:5}}a.button-link{display:flex;align-items:center;justify-content:center;height:36px;border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-weight:700;text-decoration:none}a.button-link:hover{filter:brightness(1.08)}.people{display:inline-flex;align-items:center;gap:0;white-space:nowrap}.avatar{display:inline-grid;place-items:center;width:24px;height:24px;margin-left:-6px;border-radius:50%;background:#eb6834;color:#fff;font-size:11px;font-weight:700;border:2px solid var(--night)}.avatar:first-child{margin-left:0}img.avatar{object-fit:cover;padding:0}.account-link{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}.account-link:hover span{text-decoration:underline}.account-link .avatar{border-color:var(--surface)}.avatar.more{background:#4e5b67}.thumb .here{position:absolute;left:6px;top:6px;display:inline-flex}.thumb .here .avatar,td .path .avatar{border-color:#fff}td .path .people{margin-top:4px}.count-figures{display:flex;flex-wrap:wrap;gap:4px 22px;margin-top:6px;color:var(--ink-2);font-size:14px}.count-figures b{color:var(--ink);font-size:17px;margin-right:4px}.count-head-side{display:flex;align-items:center;gap:12px}.locked-note{margin:0 0 12px;padding:10px 14px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line-strong);border-left:3px solid var(--status-needs_attention);color:var(--ink-2);max-width:80ch}.state-ready{padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:700}.count-layout{display:grid;grid-template-columns:270px minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}.count-list{display:grid;grid-gap:14px;gap:14px;position:-webkit-sticky;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow-y:auto}.count-group summary{list-style:none;cursor:pointer}.count-group summary::-webkit-details-marker{display:none}.count-group h2{display:inline;font-size:14px}.count-group ul{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-gap:1px;gap:1px}.count-group li button{width:100%;justify-content:flex-start;height:auto;min-height:30px;padding:4px 8px;border-color:transparent;background:none;color:var(--ink-2);font-size:13px;white-space:normal;text-align:left}.count-group li button .num{min-width:22px;color:var(--muted)}.count-group li button.current{background:var(--accent-soft);color:var(--ink);font-weight:700}.count-history{font-size:12px;color:var(--ink-2)}.count-history li{padding:2px 0}.count-history li.undone{text-decoration:line-through;color:var(--muted)}.stage-card{display:grid;grid-gap:12px;gap:12px;padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.stage-card h2{margin:0}.crops{display:flex;flex-wrap:wrap;gap:12px;padding:12px;border-radius:var(--radius-panel);background:var(--night)}.crops figure{margin:0;width:260px;display:grid;grid-gap:6px;gap:6px;transition:opacity .12s}.crops figure.off{opacity:.4}.crops figcaption{display:grid;grid-gap:2px;gap:2px;font-size:13px;color:var(--glass-ink)}.crops figcaption .key,.crops figcaption .muted{color:var(--glass-ink-2)}.crop{position:relative;width:260px;height:260px;border-radius:6px;overflow:hidden;background:#0b0f13}.crop.crop-large{width:min(78vw,860px);height:min(64vh,860px)}.crop-empty,.crop-map{position:absolute;inset:0}.crop-empty{display:grid;place-items:center;color:var(--glass-ink-2);font-size:13px}.crop-north{position:absolute;top:6px;left:6px;padding:0 5px;border-radius:4px;background:rgba(0,0,0,.55);color:#fff;font-size:11px;font-weight:700;pointer-events:none}.stage-actions{display:flex;flex-wrap:wrap;gap:8px}.describe{display:grid;grid-gap:8px;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.describe h3{margin:0;font-size:14px}.describe-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.describe-row>.muted:first-child{min-width:84px}.stage-actions .key{margin-left:2px;border-color:currentColor;opacity:.7}.note-warn{padding:8px 12px;border-radius:var(--radius);background:color-mix(in srgb,var(--status-needs_attention) 14%,transparent);color:var(--ink);font-size:13px}.count-map-view{height:260px;border-radius:var(--radius-panel);overflow:hidden;background:#0e1318}.look-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:rgba(10,14,18,.72)}.look{display:grid;grid-gap:10px;gap:10px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);overflow:auto;padding:14px 16px;border-radius:var(--radius-panel);background:var(--night);color:var(--glass-ink);box-shadow:var(--shadow)}.look-foot,.look-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.look h2{margin:0}.look .muted{color:var(--glass-ink-2)}.look button{background:rgba(255,255,255,.06);border-color:var(--glass-line);color:var(--glass-ink)}.look button.ghost{background:none;border-color:transparent}.look button.primary{background:var(--box);border-color:var(--box);color:#1a0d13}.look button[aria-pressed=true]{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.4);font-weight:700}.look-photos{max-height:96px;overflow-y:auto}@media (max-width:1180px){.count-layout{grid-template-columns:230px minmax(0,1fr)}}@media (max-width:760px){.count-layout{grid-template-columns:minmax(0,1fr)}.count-list{position:static;max-height:none}.crop,.crops figure{width:100%}.crop{height:auto;aspect-ratio:1}.crop.crop-large{width:calc(100vw - 64px);height:calc(100vw - 64px)}}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,420px));grid-gap:18px;gap:18px;align-items:start}.profile-card{display:grid;grid-gap:14px;gap:14px;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.profile-card .row{gap:8px}.profile-card .row,.profile-picture{display:flex;flex-wrap:wrap;align-items:center}.profile-picture{gap:16px}.avatar-large .avatar{width:88px;height:88px;font-size:30px;border-width:3px;border-color:var(--surface)}label.button-like{display:inline-flex;align-items:center;height:32px;padding:0 12px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--raised);font-size:14px;cursor:pointer}label.button-like:hover{border-color:var(--ink-2)}label.button-like:focus-within{outline:2px solid var(--accent);outline-offset:2px}.confirm-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:16px;background:rgba(10,14,18,.55)}.confirm{width:min(440px,100%);display:grid;grid-gap:12px;gap:12px;padding:18px 20px;border-radius:var(--radius-panel);background:var(--raised);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow)}.confirm h2{margin:0;font-size:17px}.confirm-body{color:var(--ink-2);font-size:14px}.confirm .row{display:flex;gap:8px;justify-content:flex-end}.workbench .confirm{background:#1f2731;border-color:var(--glass-line)}.count-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px}.count-group-head a{font-size:13px}.workbench.show-keys [data-key]{position:relative;overflow:visible}.workbench.show-keys [data-key]:after{content:attr(data-key);position:absolute;top:-9px;right:-7px;z-index:3;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border-radius:4px;background:var(--box);color:#1a0d13;font-size:11px;font-weight:700;line-height:1;pointer-events:none}.workbench .key-lit{outline:2px solid var(--box)!important;outline-offset:2px;animation:key-lit 1s ease-in-out infinite}@keyframes key-lit{50%{outline-color:transparent}}.help .help-row{display:contents}.help .help-row:hover dd,.help .help-row:hover dt .key{color:var(--glass-ink)}.help{max-height:calc(100% - 80px);overflow-y:auto}.help .row{display:flex;gap:8px;justify-content:flex-end}.key-edit{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px}.key-edit li{display:flex;align-items:center;justify-content:space-between;gap:10px}.key-edit li span{color:var(--glass-ink-2)}.key-edit button{min-width:56px;height:26px;padding:0 8px;font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.key-edit button[aria-pressed=true]{border-color:var(--box);color:var(--box)}.help-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:-4px -6px 0 0}.help-head button[aria-pressed=true]{color:var(--box)}.wheel{position:fixed;z-index:20;pointer-events:none;overflow:visible;filter:drop-shadow(0 6px 18px rgba(0,0,0,.45))}.wheel path{fill:rgba(20,26,33,.9);stroke:rgba(255,255,255,.16);stroke-width:1}.wheel g.unknown path{fill:rgba(60,38,24,.92)}.wheel g.current path{stroke:#ffffff;stroke-width:2}.wheel g.on path{fill:var(--box)}.wheel text{fill:var(--glass-ink);font-size:12px;font-weight:700;text-anchor:middle}.wheel g.on text{fill:#1a0d13}.wheel .wheel-key{fill:var(--glass-ink-2);font-size:10px;font-weight:400}.wheel g.on .wheel-key{fill:#1a0d13}.wheel-hub{fill:rgba(20,26,33,.95);stroke:rgba(255,255,255,.24)}.wheel-hub-text{fill:var(--glass-ink-2)!important;font-size:9px!important;font-weight:400!important}.folder-picker{position:relative;display:grid;grid-gap:6px;gap:6px}.folder-options{position:absolute;z-index:10;top:36px;left:0;right:0;max-height:280px;overflow-y:auto;margin:0;padding:4px;list-style:none;background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow)}.folder-options li{padding:6px 8px;border-radius:4px;cursor:pointer;font-size:14px}.folder-options li[aria-selected=true]{background:var(--accent-soft)}.segments{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 3px}.path-seg{padding:0 6px;border-radius:4px;background:var(--accent-soft);color:var(--ink);overflow-wrap:anywhere}.path-seg.new{background:none;outline:1px dashed var(--accent);outline-offset:-1px}.segments .sep{color:var(--muted)}.folder-preview{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;font-size:14px}.upload-total{display:grid;grid-gap:4px;gap:4px}.upload-total progress{width:100%;height:10px;accent-color:var(--accent)}.scroll-box{max-height:420px;overflow-y:auto}.holding thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--surface)}.upload-groups{display:grid;grid-gap:8px;gap:8px}.upload-group{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.upload-group>summary{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:10px 12px;font-size:14px;cursor:pointer;list-style:none}.upload-group>summary::-webkit-details-marker{display:none}.upload-group>summary:before{content:"";width:6px;height:6px;margin:0 2px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg)}.upload-group[open]>summary:before{transform:rotate(45deg)}.upload-group>summary .segments{font-weight:700}.upload-group .counts{margin-left:auto;color:var(--ink-2)}.upload-processing{flex-basis:100%;display:flex;align-items:center;gap:10px;color:var(--ink-2)}.upload-processing progress{flex:1 1;height:8px;accent-color:var(--accent)}.upload-group ul{list-style:none;margin:0;padding:0;max-height:280px;border-top:1px solid var(--line)}.upload-group li{display:grid;grid-template-columns:minmax(0,1.2fr) auto minmax(0,1.6fr);grid-gap:4px 14px;gap:4px 14px;align-items:baseline;padding:6px 12px;font-size:14px}.upload-group li+li{border-top:1px solid var(--line)}.upload-group .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-group .time{color:var(--muted);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.upload-group .detail{display:block;color:var(--muted);font-size:12px;font-weight:400}@media (max-width:640px){.upload-group li{grid-template-columns:minmax(0,1fr) auto}.upload-group .upload-status{grid-column:1/-1}}.upload-existing{display:grid;grid-gap:6px;gap:6px}.upload-existing-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.upload-existing h3{margin:0;font-size:14px}.upload-list li.exists{grid-template-columns:minmax(0,1fr) auto minmax(110px,220px)}.upload-list li.exists .state{color:var(--ink-2)}.dash{display:grid;grid-gap:16px;gap:16px}.dash>.page-head{margin-bottom:4px}.dash>.msg:empty{display:none}.dash>.section{margin-top:14px}.panel{min-width:0;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.panel-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:14px}.panel-head h2{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:16px}.panel-figure{margin-left:auto;font-size:16px;font-weight:700}.panel .sub{color:var(--ink-2);font-size:14px;max-width:90ch}.panel .empty{padding:28px 12px}.dash-top{display:grid;grid-template-columns:minmax(250px,1fr) minmax(0,2.4fr);grid-gap:16px;gap:16px}.hero{display:grid;align-content:center;grid-gap:4px;gap:4px;padding:4px 4px 4px 2px}.hero-label{color:var(--ink-2);font-size:15px;font-weight:700}.hero-value{font-size:76px;line-height:.95;font-weight:700;letter-spacing:-.03em}.hero-note{max-width:38ch;margin-top:6px;color:var(--ink-2);font-size:14px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.kpis>div{display:grid;align-content:start;grid-gap:2px;gap:2px;min-width:0;padding:18px 20px}.kpis>div+div{border-left:1px solid var(--line)}.kpis dt{color:var(--ink-2);font-size:13px}.kpis dd{margin:2px 0 0;font-size:32px;line-height:1.1;font-weight:700;letter-spacing:-.01em}.kpis>div>a,.kpis>div>span{font-size:13px;color:var(--muted)}.kpis>div>a{color:var(--accent)}.progress-panel .statusbar{height:16px;margin-bottom:16px}.dash-pair{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.columns{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:10px;gap:10px;height:210px}.columns-axis{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:22px;color:var(--muted);font-size:12px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.columns-axis span{line-height:12px;margin:-6px 0}.columns-plot{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-gap:2px;gap:2px}.columns-plot:before{content:"";position:absolute;inset:0 0 22px;pointer-events:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line-strong);background:linear-gradient(var(--line),var(--line)) 50% /100% 1px no-repeat}.column{display:flex;flex-direction:column;min-width:0;border-radius:4px;outline-offset:-2px}.column:focus-visible,.column:hover{background:color-mix(in srgb,var(--accent-soft) 55%,transparent)}.column-area{position:relative;flex:1 1}.column-bar{position:absolute;bottom:0;left:50%;width:min(24px,70%);transform:translateX(-50%);border-radius:4px 4px 0 0;background:var(--accent)}.column:focus-visible .column-bar,.column:hover .column-bar{filter:brightness(1.12)}.column-label{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);padding-bottom:3px;font-weight:700}.column-day,.column-label{font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.column-day{height:22px;display:flex;align-items:flex-end;justify-content:center;color:var(--muted)}.column-day.today{color:var(--ink);font-weight:700}.hbars{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.hbars li{display:grid;grid-template-columns:minmax(80px,32%) minmax(0,1fr) auto auto;align-items:center;grid-gap:12px;gap:12px;font-size:14px}.hbars.queue li{grid-template-columns:minmax(120px,32%) minmax(0,1fr) auto}.hbar-name{min-width:0;white-space:nowrap}.hbar-name,.hbar-name .path{overflow:hidden;text-overflow:ellipsis}.hbar-name .path{display:block;color:var(--muted);font-size:12px}.hbar-track{display:flex;align-items:center;height:18px}.hbar{display:block;height:12px;min-width:2px;border-radius:0 4px 4px 0;background:var(--accent);outline-offset:2px}.hbar:focus-visible,.hbar:hover{filter:brightness(1.12)}.hbar-value{min-width:3ch;text-align:right;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hbar-birds{min-width:8ch;text-align:right;color:var(--ink-2);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted-row .hbar{background:var(--status-new)}.muted-row .hbar-name{color:var(--muted)}.processing .pulse{width:8px;height:8px;border-radius:50%;background:var(--line-strong)}.processing.busy .pulse{background:var(--accent);animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{50%{opacity:.3}}.processing .hbars{margin-top:16px}.notice{margin-top:12px;padding:10px 14px;border-left:3px solid var(--error);border-radius:var(--radius);background:color-mix(in srgb,var(--error) 8%,var(--surface));font-size:14px}.folders-head{margin-bottom:16px;align-items:center}.folders-head .legend{margin-left:auto}.view-switch{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface)}.view-switch button{height:26px;padding:0 10px;border:0;border-radius:6px;background:none;color:var(--ink-2);font-size:13px}.view-switch button[aria-pressed=true]{background:var(--accent-soft);color:var(--ink);font-weight:700}.folder-group+.folder-group{margin-top:24px}.folder-group-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin-bottom:10px}.folder-group-head h3{margin:0;font-size:15px;overflow-wrap:anywhere}.folder-group-head .statusbar{flex:0 1 240px}.ftiles{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.ftile,.ftiles{display:grid;grid-gap:10px;gap:10px}.ftile{align-content:start;min-width:0;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.ftile header{display:grid;min-width:0}.ftile header a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-weight:700;text-decoration:none}.ftile header a:hover{color:var(--accent)}.ftile .path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.waffle{display:flex;flex-wrap:wrap;gap:2px}.waffle span{width:10px;height:10px;border-radius:2px}.waffle span:hover{outline:2px solid var(--ink)}.ftile footer{display:flex;flex-wrap:wrap;gap:2px 12px;color:var(--ink-2);font-size:13px}.ftile footer>:last-child:is(a,.muted){margin-left:auto}.ftile footer a{font-weight:700}.viz-tip{position:fixed;z-index:50;transform:translate(-50%,calc(-100% - 8px));padding:6px 10px;pointer-events:none;background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink-2);font-size:12px;line-height:1.4;text-align:center;white-space:pre-line}.viz-tip:first-line{color:var(--ink);font-size:14px;font-weight:700}@media (max-width:980px){.dash-pair,.dash-top{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpis>div:nth-child(3){border-left:0}.kpis>div:nth-child(n+3){border-top:1px solid var(--line)}.hero-value{font-size:60px}.folders-head .legend{margin-left:0;width:100%;order:3}}.example-rows{display:grid;grid-gap:10px;gap:10px;margin-top:12px}.example-row{display:grid;grid-template-columns:minmax(120px,200px) minmax(0,1fr);align-items:center;grid-gap:16px;gap:16px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.example-row h3{margin:0 0 2px;font-size:15px;overflow-wrap:anywhere}.example-row .muted{font-size:13px}.snips{display:flex;flex-wrap:wrap;gap:8px}.snips a{display:block;border-radius:8px;overflow:hidden;background:var(--line);outline:2px solid transparent;outline-offset:2px}.snips a:focus-visible,.snips a:hover{outline-color:var(--accent)}.snip-empty,.snips canvas,.snips img{display:block;width:120px;height:120px;object-fit:cover}@media (max-width:640px){.example-row{grid-template-columns:minmax(0,1fr)}.snip-empty,.snips canvas,.snips img{width:96px;height:96px}}.page-head a.button-link{padding:0 16px}.head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.card-form.setup{max-width:460px}.setup-steps{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;font-size:14px;color:var(--muted);counter-reset:step}.setup-steps li{counter-increment:step}.setup-steps li:before{content:counter(step) ". "}.setup-steps li.current{color:var(--ink);font-weight:700}.setup-steps li.done{color:var(--ink-2)}.setup-step{display:grid;grid-gap:12px;gap:12px}.setup-step h2{margin:8px 0 0}.setup-step p{margin:0}.setup-how{margin:0;padding-left:20px;display:grid;grid-gap:2px;gap:2px}.setup-qr{width:200px;height:200px;justify-self:start;padding:8px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.setup-secret{display:inline-block;margin-top:6px;padding:4px 8px;background:var(--surface);border:1px solid var(--line);border-radius:4px;letter-spacing:.08em;overflow-wrap:anywhere}.code-input{font-size:20px;letter-spacing:.3em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;max-width:10ch}.change-log{display:grid;grid-gap:2px;gap:2px;margin:8px 0 0;padding:0;list-style:none;max-width:900px;font-size:14px}.change-log li{display:grid;grid-template-columns:11rem minmax(0,1fr);grid-gap:12px;gap:12px;padding:6px 10px;border-radius:6px}.change-log li:nth-child(odd){background:var(--surface)}.change-log time{color:var(--muted);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:640px){.change-log li{grid-template-columns:minmax(0,1fr);gap:2px}}.export-progress{display:grid;grid-gap:8px;gap:8px;max-width:760px}.export-progress h2,.export-progress p{margin:0}.export-progress progress{width:100%;height:10px;accent-color:var(--accent)}.export-progress>button{justify-self:start}pre.code{margin:8px 0;padding:10px 12px;overflow-x:auto;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);font-size:13px}a.button-link.inline{display:inline-flex;padding:0 16px;margin-top:6px}.short-input{width:6ch}.cover-body{flex:1 1;overflow-y:auto;padding:12px 14px 16px;display:grid;align-content:start;grid-gap:12px;gap:12px}.cover-body h3{margin:4px 0 0;font-size:13px;color:var(--ink-2)}.cover-body .row{display:flex;gap:8px;flex-wrap:wrap}.cover-body .msg{margin:0;font-size:13px}.cover-body>p.muted{margin:0}.cover-classes{display:grid;grid-gap:2px;gap:2px;margin:0;padding:0;list-style:none}.cover-classes button{width:100%;justify-content:flex-start;gap:10px;height:34px;padding:0 8px;background:none;border-color:transparent;font-size:14px}.cover-classes button:hover:not(:disabled){background:var(--accent-soft)}.cover-classes button:disabled{opacity:1;color:var(--ink-2);cursor:default}.cover-classes .key{color:var(--muted);border-color:var(--line-strong)}.cover-classes .name{flex:1 1;text-align:left}.cover-classes .tally{color:var(--muted)}.cover-actions{display:grid;grid-gap:6px;gap:6px}.cover-legend .dot{display:inline-block;width:12px;height:12px;border-radius:50%;flex:none}.cover-legend .dot.set{background:#898781}.cover-legend .dot.suggested{background:#89878159;border:1.5px dashed #898781}.cover-legend .dot.none{border:1.5px dashed #898781}.cover-preview{width:min(420px,calc(100% - 24px))}.cover-preview>a{display:block;border-radius:6px;overflow:hidden;background:var(--line)}.cover-preview>a:focus-visible,.cover-preview>a:hover{outline:2px solid var(--accent);outline-offset:2px}.preview-empty{display:grid;place-items:center;aspect-ratio:4/3;color:var(--muted);font-size:13px}.ol-dragbox.select-box{border:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}@media (max-width:760px){.map-page .cover-panel{display:flex;top:auto;height:45%;width:100%;border-left:0;border-top:1px solid var(--line);z-index:3}}