:root{--ink:#17372d;--deep:#123a2f;--muted:#53685b;--paper:#faf8f1;--line:#d7dfd4;--leaf:#e2ebd9;--rust:#aa5c3c;--gold:#d7a857;--white:#fffdf8;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1}h2{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.04em}h3{font-size:clamp(1.55rem,2.4vw,2.1rem);letter-spacing:-.03em}h4{font-size:1.45rem}:focus-visible{outline:3px solid var(--rust);outline-offset:3px}[hidden]{display:none!important}.skip-link{position:absolute;top:-100px;left:1rem;z-index:50;padding:.6rem 1rem;background:#fff}.skip-link:focus{top:1rem}
.environment-bar{display:flex;justify-content:center;align-items:center;gap:.7rem;min-height:31px;padding:.2rem 1rem;color:#eaf4eb;background:#173d31;font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;text-align:center}.environment-dot{width:6px;height:6px;border-radius:50%;background:#a8d693}.bar-divider{opacity:.5}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:86px;padding:1rem clamp(1.2rem,5vw,5rem);background:#fffdf8;border-bottom:1px solid #e2e8da}.brand{text-decoration:none;display:flex;flex-direction:column}.brand-mark{font:1.65rem/1 Georgia,serif;letter-spacing:-.055em}.brand-mark em,.site-footer em{color:var(--rust);font-weight:400}.brand-sub{margin-top:.35rem;font-size:.62rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase}.header-actions{display:flex;align-items:center;gap:1rem}.account-pill{padding:.5rem .8rem;background:#ecf3e8;border:1px solid #cfddcc;border-radius:99px;font-size:.76rem;font-weight:700}.text-button{border:0;background:transparent;color:var(--rust);font-size:.78rem;font-weight:800;text-decoration:underline;text-underline-offset:.25em}
.hero{position:relative;min-height:570px;overflow:hidden;display:flex;align-items:center;background:#c9d9be}.hero-photo{position:absolute;inset:0 0 0 29%;background:url('/assets/litter-group.jpg') center 47%/cover no-repeat}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#f5f2e9 0%,rgba(245,242,233,.98) 20%,rgba(245,242,233,.88) 38%,rgba(245,242,233,.15) 68%),linear-gradient(0deg,rgba(13,50,36,.27),transparent 28%)}.hero-content{position:relative;z-index:1;width:min(620px,100%);padding:5rem clamp(1.2rem,6vw,6rem)}.eyebrow{margin:0 0 1rem;color:var(--rust);font-size:.7rem;font-weight:800;letter-spacing:.19em;text-transform:uppercase}.hero h1{margin:0 0 1.5rem;font-size:clamp(3.2rem,6.4vw,6.4rem);letter-spacing:-.07em}.hero h1 em{font-weight:400;color:#a75a3d}.hero-content>p:not(.eyebrow){max-width:31rem;color:#3e5b4b;font-size:1.06rem;line-height:1.7}.hero-link{display:inline-flex;align-items:center;gap:1.4rem;margin-top:1rem;padding:.8rem 0;border-bottom:2px solid var(--rust);font-size:.85rem;font-weight:800;text-decoration:none}.hero-link span{font-size:1.2rem}.hero-caption{position:absolute;right:clamp(1rem,4vw,4rem);bottom:1.3rem;z-index:1;padding:.45rem .7rem;background:rgba(255,253,248,.85);font-size:.7rem;font-weight:700;backdrop-filter:blur(8px)}
.workspace-shell{max-width:1440px;margin:auto;padding:clamp(3.5rem,7vw,6rem) clamp(1.2rem,5vw,5rem)}.intro-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.5fr);align-items:end;gap:2rem;margin-bottom:2.5rem}.intro-row h2{max-width:13ch;margin-bottom:0}.intro-row>p{max-width:25rem;margin:0 0 .3rem;color:var(--muted)}.message{position:sticky;top:1rem;z-index:9;margin:0 0 1.2rem;padding:.8rem 1.1rem;background:#e6efe2;border:1px solid #abc7a5;border-left:4px solid #588253;box-shadow:0 10px 30px #173d3118;font-size:.85rem}.message.error{background:#fbebe7;border-color:#dda894;border-left-color:#b85438}.login-view{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(400px,1.25fr);gap:clamp(2rem,6vw,6rem);padding:clamp(2rem,4.5vw,4.5rem);background:#e8eee2;border:1px solid #d1ddc9;box-shadow:16px 16px 0 #d8e2d2}.login-copy{padding-top:.5rem}.step-number{display:block;margin-bottom:2rem;color:#6b8269;font-size:.72rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.login-copy h3{font-size:clamp(2.1rem,4vw,3.5rem);max-width:11ch}.login-copy p{max-width:29rem;color:var(--muted)}.mini-list{padding-left:1.2rem;color:#3d5949;font-size:.87rem;line-height:1.9}.login-form{padding:1.5rem;background:#fffdf8;border:1px solid #d2ddcf;box-shadow:0 12px 34px #14392c11}.login-form fieldset{padding:0;border:0}.login-form legend{margin-bottom:.8rem;font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.account-option{display:flex;align-items:center;gap:.9rem;margin-bottom:.65rem;padding:.8rem .9rem;border:1px solid #d5ded2;background:#fafbf7;cursor:pointer}.account-option:has(input:checked){border-color:#769572;background:#e9f1e4;box-shadow:inset 4px 0 0 #5b8460}.account-option input{accent-color:#386e4f}.account-option span{display:flex;flex-direction:column;min-width:0}.account-option strong{font-size:.92rem}.account-option small{color:#647569;font-size:.73rem;overflow-wrap:anywhere}.code-label{display:block;margin:1.4rem 0 .35rem;font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.login-form>input{width:100%;padding:.8rem .9rem;border:1px solid #abbda9;background:#fff}.button{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:44px;padding:.7rem 1.1rem;border:1px solid transparent;font-size:.77rem;font-weight:800;letter-spacing:.04em;text-decoration:none;transition:transform .15s ease,background .15s ease}.button:hover{transform:translateY(-2px)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-primary{color:white;background:var(--deep)}.button-primary:hover{background:#245441}.button-secondary{color:var(--deep);background:#eff3e9;border-color:#9fb49c}.button-quiet{background:transparent;border-color:#bbc9b9}.login-form>.button{width:100%;margin-top:1rem}
.dashboard-head{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;padding-bottom:1.6rem;border-bottom:1px solid #bfcdbb}.dashboard-head h3{font-size:clamp(2.2rem,4vw,3.5rem);margin:0 0 .5rem}.dashboard-subtitle{max-width:43rem;color:var(--muted);margin:0}.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:1.7rem 0 2rem}.stat{padding:1.25rem 1.3rem;background:#f1f4eb;border:1px solid #d8e3d4}.stat strong{display:block;font:2.3rem/1 Georgia,serif;letter-spacing:-.05em}.stat span{display:block;margin-top:.45rem;color:#607568;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.29fr);gap:clamp(1.4rem,3vw,3rem)}.primary-panel{min-width:0}.activity-panel{align-self:start;padding:1.5rem;border-top:3px solid var(--rust);background:#f0ede3}.activity-panel h4{margin-bottom:.65rem}.aside-intro{color:var(--muted);font-size:.8rem}.activity-list{display:grid;gap:1rem;margin:1.5rem 0 0;padding:0;list-style:none}.activity-list li{padding-left:.9rem;border-left:2px solid #b8c8aa;font-size:.78rem;line-height:1.45}.activity-list time{display:block;margin-top:.2rem;color:#718277;font-size:.67rem}
.litter-card{margin-bottom:2rem;padding:1.7rem;background:#fffdf8;border:1px solid #d9e2d4;box-shadow:0 12px 32px #173d310e}.litter-head{display:flex;align-items:start;justify-content:space-between;gap:1rem}.litter-head h4{font-size:clamp(1.8rem,2.7vw,2.5rem);margin:.25rem 0 .5rem}.litter-overline{font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--rust)}.litter-location{color:#647869;font-size:.84rem}.litter-story{max-width:48rem;margin:1rem 0 .7rem;color:#476153;font-size:.9rem;line-height:1.7}.care-strip{margin:1rem 0 1.5rem;padding:.75rem 1rem;border-left:3px solid #a2bb93;background:#f1f5ec;color:#4c6354;font-size:.78rem}.litter-actions{display:flex;flex-wrap:wrap;gap:.55rem}.litter-actions button{padding:.5rem .7rem;border:1px solid #acc0aa;background:#f5f8f1;color:var(--ink);font-size:.7rem;font-weight:800}.litter-actions button:hover{background:#e2edda}.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:.85rem;margin-top:1.5rem}.cat-card{display:flex;flex-direction:column;min-width:0;background:#f8f8f3;border:1px solid #dbe4d8}.cat-photo{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#dbe6d7}.cat-photo-placeholder{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3;padding:1rem;background:linear-gradient(135deg,#d9e8d4,#f2e9d7);color:#53715e;font:italic 1.3rem Georgia,serif;text-align:center}.cat-content{display:flex;flex:1;flex-direction:column;padding:.9rem}.cat-content-top{display:flex;align-items:start;justify-content:space-between;gap:.5rem}.cat-content h5{margin:0;font:1.45rem/1.1 Georgia,serif}.status{display:inline-block;flex:0 0 auto;padding:.28rem .5rem;border-radius:99px;background:#e7eadb;color:#5a6a45;font-size:.6rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.status.submitted{background:#e6edf2;color:#466579}.status.reviewing{background:#fff0d3;color:#8d651b}.status.needs_changes{background:#f7e2dc;color:#9a563b}.status.approved{background:#dfeee2;color:#34704b}.cat-meta{margin:.55rem 0;color:#7b897b;font-size:.7rem}.cat-summary{flex:1;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;margin-bottom:.9rem;color:#4d6455;font-size:.76rem}.cat-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.cat-buttons button,.review-actions button{padding:.45rem .65rem;border:1px solid #aebfaa;background:#fff;color:#2f5940;font-size:.68rem;font-weight:800}.cat-buttons button:hover,.review-actions button:hover{background:#eaf2e7}.review-intro{padding:1.25rem 1.4rem;margin-bottom:1.5rem;border-left:4px solid #8baf7d;background:#eaf1e3;color:#42614b;font-size:.86rem}.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1rem}.review-card{padding:1rem;background:#fffdf8;border:1px solid #d9e2d4}.review-card-top{display:flex;align-items:center;gap:.85rem}.review-card img{width:76px;height:76px;object-fit:cover}.review-card h4{margin:0 0 .25rem;font-size:1.55rem}.review-card .status{margin-left:auto}.review-card p{margin:.8rem 0;color:#52695a;font-size:.8rem}.review-card .review-meta{color:#718378;font-size:.7rem}.review-actions{display:flex;flex-wrap:wrap;gap:.4rem}.empty-state{padding:2rem;background:#f0f4eb;border:1px solid #d8e3d4;color:#5a705e}
.flow-section{padding:clamp(4rem,7vw,7rem) clamp(1.2rem,5vw,5rem);background:#e8ede2}.flow-section>h2{max-width:16ch}.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2.4vw,2rem);margin-top:3rem}.flow-grid article{padding-top:1rem;border-top:1px solid #9bb095}.flow-grid span{color:#8ba181;font:italic 2.5rem Georgia,serif}.flow-grid h3{font-size:1.55rem;margin:1rem 0 .5rem}.flow-grid p{color:#576e5d;font-size:.84rem}.site-footer{display:grid;grid-template-columns:1fr auto;gap:1rem 3rem;padding:3rem clamp(1.2rem,5vw,5rem);color:#f1f4ec;background:#153b30}.site-footer strong{font:1.6rem Georgia,serif}.site-footer p{color:#c5d4c6;font-size:.79rem}.site-footer>div:nth-child(2){display:flex;flex-direction:column;gap:.5rem;font-size:.8rem}.footer-note{grid-column:1/-1;margin:1rem 0 0;max-width:40rem}
.editor-dialog{width:min(640px,calc(100vw - 2rem));max-height:min(90vh,900px);padding:0;border:1px solid #b8cbb4;background:#fffdf8;color:var(--ink);box-shadow:0 20px 70px #102a22aa}.editor-dialog::backdrop{background:#0c291fc2;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;gap:1rem;align-items:start;padding:1.4rem 1.6rem;border-bottom:1px solid #dce5d8}.dialog-head h2{font-size:2.2rem;margin:0}.dialog-head .eyebrow{margin-bottom:.5rem}.icon-button{width:35px;height:35px;border:1px solid #b7c8b2;background:#f5f8f2;font-size:1.4rem;line-height:1}.dialog-body{display:grid;gap:1rem;max-height:60vh;overflow:auto;padding:1.3rem 1.6rem}.dialog-body label{display:grid;gap:.35rem;font-size:.75rem;font-weight:800;letter-spacing:.03em}.dialog-body input,.dialog-body textarea{width:100%;padding:.65rem .8rem;border:1px solid #b9c8b5;background:#fff;font-size:.9rem;font-weight:400;letter-spacing:0}.dialog-body textarea{resize:vertical;line-height:1.5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.dialog-photo,.dialog-photo-placeholder{width:100%;height:190px;object-fit:cover}.dialog-photo-placeholder{display:flex;align-items:center;justify-content:center;background:#e6eee0;color:#5c755f;font:italic 1.2rem Georgia,serif}.editor-note{margin:0;color:#6a7b6c;font-size:.72rem}.dialog-actions{display:flex;justify-content:end;gap:.6rem;padding:1rem 1.6rem;border-top:1px solid #dce5d8}
@media(max-width:950px){.hero-photo{inset:0}.hero-overlay{background:linear-gradient(90deg,rgba(245,242,233,.97),rgba(245,242,233,.84) 55%,rgba(245,242,233,.25))}.dashboard-layout{grid-template-columns:1fr}.activity-panel{max-width:none}.flow-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.environment-bar{font-size:.56rem;flex-wrap:wrap}.site-header{min-height:75px}.brand-mark{font-size:1.35rem}.account-pill{display:none}.hero{min-height:540px;align-items:end}.hero-overlay{background:linear-gradient(0deg,rgba(246,243,234,.99),rgba(246,243,234,.88) 55%,rgba(246,243,234,.15))}.hero-content{padding:3.2rem 1.3rem 4.4rem}.hero h1{font-size:3.4rem}.hero-caption{right:1rem;bottom:.8rem}.intro-row,.login-view{grid-template-columns:1fr}.intro-row>p{max-width:unset}.login-view{gap:1rem;padding:1.1rem;box-shadow:8px 8px 0 #d8e2d2}.login-copy h3{max-width:unset}.login-copy .step-number{margin-bottom:1rem}.login-form{padding:1rem}.dashboard-head{align-items:start;flex-direction:column}.stat-row{grid-template-columns:repeat(2,1fr)}.litter-card{padding:1rem}.litter-head{flex-direction:column}.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr}}
@media(max-width:480px){.cat-grid,.flow-grid{grid-template-columns:1fr}.cat-photo{aspect-ratio:5/3}.form-grid{grid-template-columns:1fr}.dialog-body{max-height:56vh}.brand-sub{font-size:.55rem}}
.credits{max-width:1050px;margin:auto;padding:5rem clamp(1.2rem,5vw,5rem)}.credits h1{font-size:clamp(2.8rem,5vw,5rem);letter-spacing:-.06em}.credits>p{max-width:44rem;color:#52695a}.credit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:2.5rem}.credit-card{background:#fffdf8;border:1px solid #d9e2d4;padding:1rem}.credit-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.credit-card h2{font-size:1.5rem;margin:1rem 0 .3rem}.credit-card p{font-size:.8rem;color:#52695a;margin:.25rem 0}.credit-card a{text-underline-offset:.2em}
