:root{--paper:#f2ede5;--paper-elevated:#faf8f4;--paper-border:#c9c1b2;--ink:#2c2419;--ink-muted:#5c5348;--ink-faint:#8a8278;--tape:#8b2942;--tape-muted:#a85a6b;--filed:#3d5240;--filed-muted:#5a6d5c;--header-bg:#2c2419;--header-ink:#e8e4dc;--header-ink-muted:#b8b2a8;--header-accent:#c44d5a;--font-display:"Libre Baskerville",Georgia,"Times New Roman",serif;--font-body:"DM Sans",system-ui,-apple-system,sans-serif;--rule:1px solid var(--paper-border);--rule-ink:1px solid var(--ink);--radius-none:0;--radius-tight:2px;--skeleton-base:#ddd6cb;--skeleton-shine:#e8e2d8;--error-bg:#fde8e8;--error-ink:#8b2942}[data-theme=dark]{--paper:#1a1a1f;--paper-elevated:#242429;--paper-border:#3a3a42;--ink:#e0ddd6;--ink-muted:#a8a49c;--ink-faint:#7a776f;--tape:#d4627a;--tape-muted:#b87a8a;--filed:#6ab06e;--filed-muted:#7a9a7c;--header-bg:#111114;--header-ink:#e0ddd6;--header-ink-muted:#8a877f;--header-accent:#d4627a;--rule:1px solid var(--paper-border);--rule-ink:1px solid var(--ink-muted);--skeleton-base:#2e2e35;--skeleton-shine:#3a3a42;--error-bg:#3a1a22;--error-ink:#e88a9a}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f2ede5;background-color:var(--paper);color:#2c2419;color:var(--ink);font-family:DM Sans,system-ui,-apple-system,sans-serif;font-family:var(--font-body);font-size:16px;line-height:1.55;margin:0}body:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='.03'/%3E%3C/svg%3E");content:"";inset:0;pointer-events:none;position:fixed;z-index:0}[data-theme=dark] body:before{opacity:.015}#root{position:relative;z-index:1}h1,h2,h3{color:#2c2419;color:var(--ink);font-family:Libre Baskerville,Georgia,Times New Roman,serif;font-family:var(--font-display);font-weight:700;letter-spacing:.02em}code{font-family:Liberation Mono,Courier New,monospace;font-size:.9em}a{color:#2c2419;color:var(--ink);text-decoration:none}a:hover{color:#8b2942;color:var(--tape)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.page{animation:fadeIn .35s ease-out}@media (prefers-reduced-motion:reduce){.home-card,.match-card,.page,.registry-card{animation:none!important}}.layout{display:flex;flex-direction:column;min-height:100vh}.layout-header{align-items:center;background:var(--header-bg);border-bottom:3px solid var(--header-accent);color:var(--header-ink);display:flex;flex-shrink:0;flex-wrap:wrap;gap:.75rem;justify-content:space-between;padding:.75rem 1.5rem .6rem}.layout-brand{color:var(--header-ink);font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:.04em;text-decoration:none}.layout-brand:hover{color:#fff}.theme-toggle{background:none;border:1px solid var(--header-ink-muted);border-radius:4px;color:var(--header-ink);cursor:pointer;font-size:1.1rem;line-height:1;padding:.3rem .5rem;transition:border-color .2s ease,background .2s ease}.theme-toggle:hover{background:#ffffff14;border-color:var(--header-ink)}.layout-nav{display:flex;gap:.25rem}.layout-nav a{border-bottom:2px solid #0000;color:var(--header-ink-muted);font-size:.875rem;font-weight:500;letter-spacing:.06em;padding:.4rem .75rem;text-decoration:none;text-transform:uppercase;transition:color .15s ease,border-color .15s ease}.layout-nav a.active,.layout-nav a:hover{color:var(--header-ink)}.layout-nav a.active{border-bottom-color:var(--header-accent)}.layout-main{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:820px;padding:1.75rem 1.5rem 3rem;width:100%}.layout-footer{border-top:var(--rule);color:var(--ink-faint);font-size:.8rem;padding:1rem 1.5rem;text-align:center}.layout-footer a{color:var(--ink-muted)}.layout-footer a:hover{color:var(--tape)}.layout-footer-sep{margin:0 .25rem}@media (max-width:640px){.layout-header{align-items:flex-start;flex-direction:column;gap:.5rem;padding:.6rem 1rem .5rem;text-align:left}.layout-nav{flex-wrap:wrap;gap:.15rem;width:100%}.layout-nav a{font-size:.75rem;padding:.35rem .5rem}.layout-brand{font-size:1.25rem}.layout-main{padding:1.25rem 1rem 2rem}.theme-toggle{position:absolute;right:1rem;top:.6rem}.layout-header{position:relative}}.privacy-ethics-overlay{align-items:stretch;border:none;display:flex;height:100vh;inset:0;justify-content:stretch;margin:0;max-height:100%;max-width:100%;overflow:hidden;position:fixed;width:100vw;z-index:9999}.privacy-ethics-modal,.privacy-ethics-overlay,.privacy-ethics-overlay::backdrop{background:var(--paper-elevated)}.privacy-ethics-modal{border-left:4px solid var(--tape);box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;height:100%;margin:0 auto;max-width:900px;min-height:0;overflow-y:auto;padding:1.5rem 1.75rem;width:100%}.privacy-ethics-title{color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:700;margin:0 0 1rem}.privacy-ethics-content{color:var(--ink);font-size:.9rem;line-height:1.6}.privacy-ethics-content p{margin:0 0 .75rem}.privacy-ethics-content p:last-of-type{margin-bottom:0}.privacy-ethics-content ul{margin:0 0 1rem;padding-left:1.25rem}.privacy-ethics-content li{margin-bottom:.6rem}.privacy-ethics-content li:last-child{margin-bottom:0}.privacy-ethics-footer{color:var(--ink-muted);font-size:.85rem;margin-top:1rem!important}.privacy-ethics-actions{border-top:var(--rule);display:flex;flex-direction:column;gap:1rem;margin-top:1.25rem;padding-top:1.25rem}.privacy-ethics-checkbox{align-items:flex-start;color:var(--ink);cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.privacy-ethics-checkbox input{accent-color:var(--tape);cursor:pointer;height:1.1rem;margin-top:.25rem;width:1.1rem}.privacy-ethics-btn{background:var(--ink);border:2px solid var(--ink);color:var(--paper-elevated);cursor:pointer;font-family:var(--font-body);font-size:.95rem;font-weight:600;letter-spacing:.05em;padding:.6rem 1.25rem;text-transform:uppercase;transition:background .15s ease,border-color .15s ease}.privacy-ethics-btn:hover:not(:disabled){background:var(--tape);border-color:var(--tape)}.privacy-ethics-btn:disabled{cursor:not-allowed;opacity:.5}.home-page{text-align:left}.home-page .page-header{margin-bottom:2rem}.home-page h1{font-size:1.65rem}.home-intro{color:var(--ink-muted);font-size:.95rem;line-height:1.6;margin:0 0 2rem;max-width:36em}.home-actions{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.home-card{animation:fadeInUp .4s ease-out both;background:var(--paper-elevated);border:var(--rule);border-left:4px solid var(--tape);color:inherit;display:block;padding:1.25rem 1.25rem 1.25rem 1rem;text-decoration:none;transition:border-color .2s ease,background .2s ease}.home-card:first-child{animation-delay:0s}.home-card:nth-child(2){animation-delay:.08s}.home-card:nth-child(3){animation-delay:.16s}.home-card:hover{background:var(--paper);border-left-color:var(--tape-muted);border-color:var(--ink-faint)}.home-card-label{color:var(--ink-faint);display:block;font-size:.65rem;font-weight:600;letter-spacing:.14em;margin-bottom:.5rem;text-transform:uppercase}.home-card-title{color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:700;line-height:1.3;margin-bottom:.25rem}.home-card-desc{color:var(--ink-muted);font-size:.875rem;line-height:1.45}.form-error{background:var(--error-bg);border-left:4px solid var(--tape);color:var(--error-ink);font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}.missing-person-form .form-group{margin-bottom:1.25rem}.missing-person-form label{color:var(--ink-muted);display:block;font-size:.7rem;font-weight:600;letter-spacing:.1em;margin-bottom:.4rem;text-transform:uppercase}.missing-person-form input[type=date],.missing-person-form input[type=email],.missing-person-form input[type=text],.missing-person-form textarea{background:#0000;border:none;border-bottom:var(--rule-ink);box-sizing:border-box;color:var(--ink);font-family:var(--font-body);font-size:1rem;padding:.5rem 0 .4rem;transition:border-color .15s ease;width:100%}.missing-person-form input::placeholder,.missing-person-form textarea::placeholder{color:var(--ink-faint)}.missing-person-form input:focus,.missing-person-form textarea:focus{border-bottom-color:var(--tape);outline:none}.missing-person-form .form-row{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:1fr 1fr}@media (max-width:500px){.missing-person-form .form-row{grid-template-columns:1fr}}.photo-upload{background:var(--paper-elevated);border:2px dashed var(--paper-border);padding:1.25rem;text-align:center}.photo-upload input[type=file]{color:var(--ink-muted);font-size:.85rem;margin-bottom:.5rem;width:100%}.photo-preview{border:var(--rule);max-height:160px;max-width:160px;object-fit:cover}.photo-placeholder{color:var(--ink-faint);font-size:.85rem}.form-actions{border-top:var(--rule);display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem}.form-success{background:var(--paper-elevated);border:var(--rule);border-left:4px solid var(--filed);color:var(--filed);padding:2rem;text-align:center}.form-success p{font-family:var(--font-display);font-size:1.05rem;margin:0 0 1rem}.btn{border:2px solid #0000;cursor:pointer;font-family:var(--font-body);font-size:.9rem;font-weight:600;letter-spacing:.06em;padding:.5rem 1.25rem;text-transform:uppercase;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--paper-elevated)}.btn-primary:hover:not(:disabled){background:var(--tape);border-color:var(--tape);color:#fff}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:#0000;border-color:var(--paper-border);color:var(--ink)}.btn-secondary:hover{border-color:var(--ink-muted);color:var(--ink-muted)}.page{padding:0 0 2rem}.page-header{border-bottom:var(--rule);margin-bottom:1.5rem;padding-bottom:.75rem}.page h1{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:.02em;margin:0 0 .35rem}.page-label{color:var(--ink-faint);display:block;font-size:.7rem;font-weight:600;letter-spacing:.12em;margin-bottom:.25rem;text-transform:uppercase}.page-header .page-intro{margin:.5rem 0 0}.page-intro{color:var(--ink-muted);font-size:.95rem;line-height:1.6;margin:0}@media (max-width:640px){.page h1{font-size:1.25rem}.page-intro{font-size:.88rem}}.sighting-upload-form .form-error{background:var(--error-bg);border-left:4px solid var(--tape);color:var(--error-ink);font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}.sighting-upload-form .form-group{margin-bottom:1.25rem}.sighting-upload-form label{color:var(--ink-muted);display:block;font-size:.7rem;font-weight:600;letter-spacing:.1em;margin-bottom:.4rem;text-transform:uppercase}.sighting-upload-form input[type=text],.sighting-upload-form textarea{background:#0000;border:none;border-bottom:var(--rule-ink);box-sizing:border-box;color:var(--ink);font-family:var(--font-body);font-size:1rem;padding:.5rem 0 .4rem;transition:border-color .15s ease;width:100%}.sighting-upload-form input::placeholder,.sighting-upload-form textarea::placeholder{color:var(--ink-faint)}.sighting-upload-form input:focus,.sighting-upload-form textarea:focus{border-bottom-color:var(--tape);outline:none}.drop-zone{align-items:center;background:var(--paper-elevated);border:2px dashed var(--paper-border);cursor:pointer;display:flex;justify-content:center;min-height:180px;padding:2rem;position:relative;text-align:center}.drop-zone.has-image,.drop-zone:hover{background:var(--paper);border-color:var(--ink-muted)}.drop-zone input[type=file]{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.drop-zone-text{color:var(--ink-muted);font-size:.9rem}.sighting-preview{border:var(--rule);max-height:280px;max-width:100%;object-fit:contain}.sighting-upload-form .form-actions{border-top:var(--rule);display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem}.sighting-upload-form .form-success{background:var(--paper-elevated);border:var(--rule);border-left:4px solid var(--filed);color:var(--filed);padding:2rem;text-align:center}.sighting-upload-form .form-success p{font-family:var(--font-display);font-size:1.05rem;margin:0 0 1rem}@keyframes skeleton-shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{animation:skeleton-shimmer 1.4s ease-in-out infinite;background:var(--skeleton-base);background-image:linear-gradient(90deg,var(--skeleton-base) 0,var(--skeleton-shine) 40px,var(--skeleton-base) 80px);background-repeat:no-repeat;background-size:200px 100%;border-radius:var(--radius-tight)}.skeleton-text{height:.85rem;margin-bottom:.5rem;width:80%}.skeleton-text.short{width:50%}.skeleton-text.xs{height:.7rem;width:35%}.skeleton-registry-card{background:var(--paper-elevated);border:var(--rule);border-left:4px solid var(--skeleton-base);overflow:hidden}.skeleton-registry-photo{aspect-ratio:1;width:100%}.skeleton-registry-body{padding:.75rem 1rem}.skeleton-match-card{background:var(--paper-elevated);border:var(--rule);border-left:4px solid var(--skeleton-base);display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem}.skeleton-match-images{align-items:center;display:flex;gap:1.5rem;justify-content:center}.skeleton-match-thumb{height:100px;width:100px}.skeleton-match-vs{border-radius:50%;height:20px;width:20px}.skeleton-match-score{height:1.5rem;width:120px}.registry-loading{color:var(--ink-muted);margin:1.5rem 0}.registry-empty{background:var(--paper-elevated);border:var(--rule);padding:2rem;text-align:center}.registry-empty p{margin:0 0 .35rem}.registry-empty-hint{color:var(--ink-muted);font-size:.9rem}.registry-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.registry-card{animation:fadeInUp .4s ease-out both;background:var(--paper-elevated);border:var(--rule);border-left:4px solid var(--tape);overflow:hidden}.registry-card:first-child{animation-delay:0s}.registry-card:nth-child(2){animation-delay:.05s}.registry-card:nth-child(3){animation-delay:.1s}.registry-card:nth-child(4){animation-delay:.15s}.registry-card:nth-child(5){animation-delay:.2s}.registry-card:nth-child(6){animation-delay:.25s}.registry-card-photo{align-items:center;aspect-ratio:1;background:var(--paper);display:flex;justify-content:center;width:100%}.registry-card-photo img{height:100%;object-fit:cover;width:100%}.registry-card-no-photo{color:var(--ink-faint);font-size:.85rem}.registry-card-body{padding:.75rem 1rem}.registry-card-name{color:var(--ink);font-family:var(--font-display);font-size:1rem;font-weight:700;margin:0 0 .35rem}.registry-card-meta{color:var(--ink-muted);font-size:.8rem;line-height:1.4;margin:0}@media (max-width:480px){.registry-grid{gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.registry-card-body{padding:.5rem .75rem}.registry-card-name{font-size:.9rem}}.match-card{animation:fadeInUp .4s ease-out both;background:var(--paper-elevated);border:var(--rule);border-left:4px solid var(--ink);display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem}.matches-list .match-card:first-child{animation-delay:0s}.matches-list .match-card:nth-child(2){animation-delay:.08s}.matches-list .match-card:nth-child(3){animation-delay:.16s}.matches-list .match-card:nth-child(4){animation-delay:.24s}.match-card-images{align-items:stretch;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.match-card-image-block{align-items:center;display:flex;flex-direction:column;min-width:120px}.match-card-label{color:var(--ink-faint);font-size:.65rem;font-weight:600;letter-spacing:.12em;margin-bottom:.4rem;text-transform:uppercase}.match-card-image-block img{object-fit:cover}.match-card-image-block img,.match-card-placeholder{background:var(--paper);border:var(--rule);height:100px;width:100px}.match-card-placeholder{align-items:center;color:var(--ink-faint);display:flex;font-size:.75rem;justify-content:center;letter-spacing:.05em;text-transform:uppercase}.match-card-name{color:var(--ink);font-family:var(--font-display);font-size:.95rem;font-weight:700;margin-top:.4rem}.match-card-meta{color:var(--ink-muted);font-size:.8rem;margin-top:.2rem}.match-card-vs{align-items:center;color:var(--paper-border);display:flex;font-size:1rem;font-weight:700}.match-card-score-wrap{align-items:center;border-top:var(--rule);display:flex;flex-wrap:wrap;gap:.75rem;padding-top:.5rem}.match-card-score{border:2px solid;color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:700;padding:.25rem .6rem}.match-card-tier{color:var(--ink-muted);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.score-high{border-color:var(--filed);color:var(--filed)}.score-medium{border-color:var(--ink-muted);color:var(--ink-muted)}.score-low{border-color:var(--ink-faint);color:var(--ink-faint)}@media (max-width:480px){.match-card{padding:.75rem}.match-card-images{gap:.75rem}.match-card-image-block img,.match-card-placeholder{height:80px;width:80px}.match-card-score{font-size:1rem}}.matches-list{display:flex;flex-direction:column;gap:1.25rem}.matches-empty{background:var(--paper-elevated);border:var(--rule);padding:3rem 1.5rem;text-align:center}.matches-empty p{color:var(--ink);font-family:var(--font-display);font-size:1.1rem;margin:0 0 .35rem}.matches-empty-hint{color:var(--ink-muted);font-size:.9rem}.matches-filters{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.matches-filter-label{color:var(--ink-muted);display:flex;flex-direction:column;font-size:.75rem;font-weight:600;gap:.25rem;letter-spacing:.08em;text-transform:uppercase}.matches-filter-input,.matches-filter-select{background:var(--paper-elevated);border:var(--rule);font-size:.9rem;min-width:80px;padding:.4rem .6rem}.matches-loading{color:var(--ink-muted);margin:1.5rem 0}.matches-page .page-label{margin-bottom:.35rem}@media (max-width:480px){.matches-filters{align-items:stretch;flex-direction:column}.matches-filter-input,.matches-filter-select{width:100%}}
/*# sourceMappingURL=main.011d8851.css.map*/