:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#152b32;background:#f4f7f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}h1,h2,p{margin-top:0}h1{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.13;font-weight:600;letter-spacing:-.045em}h2{font-size:1.3rem;letter-spacing:-.02em}.muted{color:#586d73}.eyebrow{font-size:.7rem;letter-spacing:.17em;font-weight:700;color:#192777}.panel{background:#fff;border:1px solid #e1e9e6;border-radius:16px;padding:28px}.workspace{max-width:1180px;padding:0 32px 60px;margin:auto}.topbar{display:flex;justify-content:space-between;align-items:center;min-height:100px;border-bottom:1px solid #dde6e2;gap:16px}.brand{font-size:1.2rem;font-weight:700}.brand-dot{color:#e30613}.brand-logo{height:34px;width:auto;display:block}.brand-area{display:flex;align-items:center;gap:28px;min-width:0}.main-nav{display:flex;gap:6px}.nav-link{position:relative;padding:10px 16px;border-radius:8px;font-size:1rem;font-weight:600;color:#586d73;text-decoration:none;white-space:nowrap}.nav-link:hover{background:#eef1f9;color:#192777}.nav-link.router-link-active{color:#192777;background:#eef1f9}.nav-link.router-link-active:after{content:"";position:absolute;left:16px;right:16px;bottom:2px;height:2px;border-radius:2px;background:#192777}.actions{display:flex;align-items:center;gap:18px}.intro{padding:54px 0 28px}.intro h1{margin-bottom:20px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;margin-top:16px;align-items:start}.task-form{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}.task-form input{flex:1;min-width:0}.stat-list{list-style:none;margin:16px 0 0;padding:14px 0 0;border-top:1px solid #e1e9e6;display:flex;flex-direction:column;gap:9px;font-size:.9rem}.stat-list li{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.stat-list .stat-alert{color:#b42318;font-weight:600}.row-overdue{background:#fff6f5}.photo-tools{display:flex;align-items:center;gap:14px;margin:18px 0 16px}.empty-note{margin-top:16px;color:#586d73}.store-group{margin-top:16px}.store-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.store-head h2{margin:0}.photo-grid{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.photo-item{display:flex;flex-direction:column;gap:8px}.review-tag{align-self:flex-start;margin-top:4px}.review-actions{display:flex;gap:8px}.review-actions button{flex:1}.photo-card{display:block;width:100%;padding:0;border:1px solid #e1e9e6;border-radius:12px;overflow:hidden;background:#fff;cursor:pointer;text-align:left;font:inherit}.photo-card:hover{border-color:#192777}.photo-card img{display:block;width:100%;height:140px;object-fit:cover}.photo-meta{display:flex;flex-direction:column;gap:2px;padding:8px 10px;font-size:.8rem}.photo-full{display:block;width:100%;max-height:62vh;object-fit:contain;border-radius:10px;background:#f4f7f6}.photo-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:16px 0 0}.photo-facts dt{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#586d73}.photo-facts dd{margin:2px 0 0;font-weight:500}.photo-note{margin:14px 0 0;padding-top:12px;border-top:1px solid #e1e9e6}.text-overdue{color:#b42318;font-weight:600}.count{font-size:4rem;font-weight:500;letter-spacing:-.06em}.summary .muted{margin:0}.small{font-size:.85rem;color:#586d73;line-height:1.6}.chart{width:100%;height:100px}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:18px}.login-layout{max-width:430px;margin:auto;min-height:100svh;display:flex;flex-direction:column;justify-content:center;gap:28px;padding:40px}.login-copy{display:flex;justify-content:center}.login-logo{max-width:190px;width:100%;height:auto}.login-form{display:flex;flex-direction:column;gap:14px}.login-form h2{margin-bottom:0}.login-form label{font-size:.875rem}.login-form button{margin-top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.user-form{display:flex;flex-direction:column;gap:8px}.user-form label{font-size:.875rem;font-weight:500;margin-top:6px}.user-form small{margin-top:-2px}@media(max-width:760px){.workspace{padding:0 16px 32px}.workspace-grid{grid-template-columns:1fr}.login-layout{gap:20px;padding:24px}.topbar{flex-wrap:wrap;padding:20px 0}.intro{padding-top:36px}.panel{padding:20px}.brand-area{width:100%;gap:16px;justify-content:space-between}.main-nav{gap:4px}.nav-link{padding:9px 12px;font-size:.95rem}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
