@font-face{font-family:Spectral;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/spectral-latin-400-normal-CTVgUekv.woff2) format("woff2")}@font-face{font-family:Spectral;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/spectral-latin-400-italic-CDO25mTW.woff2) format("woff2")}@font-face{font-family:Spectral;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/spectral-latin-500-normal-nNjq7_Cd.woff2) format("woff2")}@font-face{font-family:Spectral;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/spectral-latin-600-normal-DE3OxvnQ.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2")}:root{--paper: #EFEDE3;--paper-deep: #E6E3D6;--ink: #26251F;--ink-soft: #55524A;--graphite: #9A968A;--oxblood: #7C2D2D;--bottle: #3F5A48;--gilt: #A8853A;--rule: #C9C5B5;--mono: "IBM Plex Mono", ui-monospace, monospace;--serif: "Spectral", Georgia, serif;--gutter-l: max(16px, env(safe-area-inset-left));--gutter-r: max(16px, env(safe-area-inset-right));--tabbar: 58px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:var(--paper);color:var(--ink);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--serif);font-size:16px;line-height:1.45;overflow-x:hidden;-webkit-tap-highlight-color:transparent}a{color:var(--bottle);text-underline-offset:3px}img{max-width:100%}button{font:inherit;color:inherit}.wrap{max-width:760px;margin:0 auto;padding:calc(14px + env(safe-area-inset-top)) var(--gutter-r) calc(var(--tabbar) + 40px + env(safe-area-inset-bottom)) var(--gutter-l)}.wrap.bare{padding-bottom:calc(40px + env(safe-area-inset-bottom))}.mast{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border-bottom:3px double var(--ink);padding-bottom:10px;margin-bottom:18px}.mast-kicker{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;color:var(--ink-soft)}.mast-title{font-family:var(--serif);font-weight:600;font-size:30px;line-height:1.05;margin:3px 0 0}.mast-title a{color:inherit;text-decoration:none}.mast-user{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--ink-soft);text-decoration:none;display:block;padding:22px 0 4px;min-height:44px;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mast-user.on{color:var(--ink);border-bottom:2px solid var(--ink)}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--paper);border-top:1px solid var(--ink);padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.tabbar-inner{max-width:760px;margin:0 auto;display:flex}.tab{flex:1 1 0;min-width:0;height:var(--tabbar);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.1em;color:var(--graphite);text-decoration:none;border-top:3px solid transparent;margin-top:-1px}.tab.on{color:var(--ink);border-top-color:var(--ink)}.h2{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;font-family:var(--serif);font-weight:600;font-size:21px;line-height:1.2;border-bottom:2px solid var(--ink);padding-bottom:6px;margin:26px 0 0}.h2:first-child{margin-top:4px}.h2 .aside{font-family:var(--mono);font-weight:400;font-size:11.5px;letter-spacing:.04em;color:var(--ink-soft)}.h3{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.16em;color:var(--ink-soft);margin:22px 0 6px;text-transform:uppercase}.lede{font-style:italic;color:var(--ink-soft);font-size:15px;margin:8px 0 0}.mono{font-family:var(--mono)}.small{font-size:13px}.soft{color:var(--ink-soft)}.faint{color:var(--graphite)}.italic{font-style:italic}.empty{font-style:italic;color:var(--ink-soft);padding:18px 2px}.data{font-family:var(--mono);font-size:12px;color:var(--ink-soft);overflow-wrap:anywhere}.big-number{font-family:var(--mono);font-size:28px;font-weight:500;letter-spacing:.02em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:var(--paper);border:1.5px solid var(--ink);border-radius:0;cursor:pointer;text-decoration:none;text-align:center}.btn:disabled{background:var(--graphite);border-color:var(--graphite);cursor:default}.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:disabled{color:var(--graphite);border-color:var(--rule);background:transparent}.btn.danger{background:transparent;color:var(--oxblood);border-color:var(--oxblood)}.btn.block{display:flex;width:100%}.btn.small{min-height:40px;padding:6px 12px;font-size:11px;letter-spacing:.12em}.btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.btns>.btn{flex:1 1 auto}.link{background:none;border:none;padding:10px 0;min-height:44px;cursor:pointer;font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center}.link.danger{color:var(--oxblood)}.link.soft{color:var(--ink-soft)}.link:disabled{color:var(--graphite);cursor:default}.links{display:flex;flex-wrap:wrap;column-gap:18px}.form{margin-top:14px}.field{display:block;margin-top:14px;min-width:0}.field-label{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--ink-soft);text-transform:uppercase}.field-label .marks{display:inline-flex;gap:8px;letter-spacing:.08em}.mark-suggested{color:var(--gilt);font-weight:600}.mark-low{color:var(--oxblood);font-weight:600}.mark-edited{color:var(--bottle)}.input,.select,.area{display:block;width:100%;margin-top:5px;padding:10px 12px;min-height:46px;font-family:var(--serif);font-size:16px;line-height:1.35;color:var(--ink);background:var(--paper-deep);border:1px solid var(--rule);border-bottom:1.5px solid var(--ink-soft);border-radius:0;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.input.mono{font-family:var(--mono);font-size:16px}.area{min-height:84px;resize:vertical}.select{padding-right:34px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--ink-soft) 50%),linear-gradient(135deg,var(--ink-soft) 50%,transparent 50%);background-position:calc(100% - 18px) 52%,calc(100% - 13px) 52%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.input:focus,.select:focus,.area:focus{border-color:var(--ink);border-bottom-color:var(--ink);background-color:#f4f2ea}.input:disabled,.select:disabled,.area:disabled{color:var(--ink-soft)}.field.low .input,.field.low .select,.field.low .area{border-left:4px solid var(--gilt);background-color:#a8853a1f}.field.invalid .input,.field.invalid .select,.field.invalid .area{border-color:var(--oxblood)}.field-error{font-family:var(--mono);font-size:12px;color:var(--oxblood);margin-top:4px}.field-hint{font-family:var(--mono);font-size:11.5px;color:var(--graphite);margin-top:4px}.grid2{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}.grid2>.full{grid-column:1 / -1}@media (max-width: 359px){.grid2{grid-template-columns:1fr}}.check{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-size:15px}.check input{width:22px;height:22px;accent-color:var(--ink);margin:0;flex-shrink:0}.toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:8px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-top:18px;cursor:pointer}.toggle-text{font-size:15px}.toggle-text .data{display:block}.switch{position:relative;width:52px;height:30px;flex-shrink:0}.switch input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer;width:100%;height:100%}.switch span{position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px solid var(--ink);background:transparent;pointer-events:none}.switch span:after{content:"";position:absolute;top:3px;left:3px;width:21px;height:21px;background:var(--graphite);transition:transform .15s ease}.switch input:checked+span{background:var(--ink)}.switch input:checked+span:after{transform:translate(22px);background:var(--paper)}.switch input:focus-visible+span{outline:2px solid var(--gilt);outline-offset:2px}@media (prefers-reduced-motion: reduce){.switch span:after{transition:none}}.notice{margin-top:14px;padding:10px 12px;border:1px solid var(--ink-soft);font-size:14.5px}.notice .kicker{display:block;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.16em;margin-bottom:2px}.notice.warn{border-color:var(--gilt);border-left-width:4px}.notice.warn .kicker{color:var(--gilt)}.notice.err{border-color:var(--oxblood);color:var(--oxblood);font-family:var(--mono);font-size:12.5px}.notice.ok{border-color:var(--bottle);color:var(--bottle);font-family:var(--mono);font-size:12.5px}.notice ul{margin:6px 0 0;padding-left:18px}.notice li{margin:4px 0}.stamp{display:inline-block;white-space:nowrap;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border:1.5px solid currentColor;padding:2px 7px 1px;transform:rotate(-2deg)}.st-open,.st-discarded{color:var(--graphite)}.st-processing,.st-analyzing,.st-uploading{color:var(--gilt)}.st-ready,.st-owned{color:var(--bottle)}.st-failed,.st-lost{color:var(--oxblood)}.st-saved{color:var(--ink)}.st-sold,.st-disposed{color:var(--ink-soft)}.list{margin:0;padding:0;list-style:none}.row{display:flex;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--rule);color:inherit;text-decoration:none;min-height:60px}a.row:active{background:#26251f0d}.row-main{flex:1;min-width:0}.row-title{font-weight:600;font-size:16px;line-height:1.25;overflow-wrap:anywhere}.row-sub{font-family:var(--mono);font-size:11.5px;color:var(--ink-soft);margin-top:2px;overflow-wrap:anywhere}.row-end{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.row-actions{display:flex;flex-wrap:wrap;column-gap:16px;margin-top:2px}.chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1.5px solid var(--ink);color:var(--ink);text-decoration:none;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.chip.hot{background:var(--ink);color:var(--paper)}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tag{font-family:var(--mono);font-size:11.5px;padding:2px 8px;border:1px solid var(--rule);color:var(--ink-soft)}.stats{display:flex;gap:24px;flex-wrap:wrap;margin-top:12px}.stat-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;color:var(--ink-soft);text-transform:uppercase}.thumb{width:64px;height:64px;flex-shrink:0;object-fit:cover;display:block;background:var(--paper-deep);border:1px solid var(--rule)}.thumb.lg{width:96px;height:96px}.ph{display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--graphite);text-transform:uppercase;background:repeating-linear-gradient(-45deg,var(--paper-deep),var(--paper-deep) 6px,var(--paper) 6px,var(--paper) 12px);overflow:hidden;padding:2px}.ph.failed{color:var(--oxblood)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin-top:12px}.photo-cell{min-width:0}.photo-cell .thumb{width:100%;height:auto;aspect-ratio:1}.photo-cell .data{margin-top:4px}.progress{height:4px;background:var(--paper-deep);margin-top:5px;overflow:hidden}.progress>div{height:100%;background:var(--ink);transition:width .12s linear}.progress.err>div{background:var(--oxblood)}.carousel{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin:12px calc(-1 * var(--gutter-r)) 0 calc(-1 * var(--gutter-l));padding:0 var(--gutter-r) 6px var(--gutter-l);scroll-padding-left:var(--gutter-l)}.slide{flex:0 0 82%;max-width:420px;scroll-snap-align:start}.slide img,.slide .ph{width:100%;aspect-ratio:1;object-fit:contain;display:block;background:#1d1c18;border:1px solid var(--ink)}.slide .ph{background:repeating-linear-gradient(-45deg,var(--paper-deep),var(--paper-deep) 6px,var(--paper) 6px,var(--paper) 12px);font-size:11px}.slide-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.picker{display:flex;align-items:center;justify-content:center;gap:10px;min-height:92px;margin-top:12px;padding:14px;border:1.5px dashed var(--ink-soft);background:var(--paper-deep);cursor:pointer;font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);position:relative;text-align:center}.picker input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer}.picker.disabled{opacity:.5;cursor:default}.tree-row{border-bottom:1px solid var(--rule);padding:8px 0 4px}.tree-head{display:flex;align-items:baseline;gap:10px}.tree-name{flex:1;min-width:0;font-weight:600;overflow-wrap:anywhere}.tree-count{font-family:var(--mono);font-size:11.5px;color:var(--ink-soft);white-space:nowrap}.tree-notes{font-size:13.5px;font-style:italic;color:var(--ink-soft)}.tree-edit{background:var(--paper-deep);padding:4px 12px 12px;margin:6px 0 4px;border-left:3px solid var(--ink)}.meter{height:10px;border:1px solid var(--ink);margin-top:8px;position:relative}.meter>div{height:100%;background:var(--ink)}.meter.over>div{background:var(--oxblood)}.center-screen{min-height:60vh;display:flex;align-items:center;justify-content:center}.hr{border:none;border-top:1px solid var(--rule);margin:22px 0 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}a.row-title{display:block;color:inherit;text-decoration:none}figure.slide{margin:0}.spaced{margin-top:22px}
