:root{color-scheme:light;--ink:#29221c;--muted:#706354;--paper:#faf7f0;--accent:#a95d13;--line:#e7dccb}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:var(--accent)}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.header,main,footer{width:min(1080px,calc(100% - 40px));margin:auto}.header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:25px 0;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-weight:800;font-size:24px;color:var(--ink)}.brand span{color:var(--accent)}.badge{font-size:13px;background:#efe5d5;padding:5px 12px;border-radius:100px}.hero{padding:65px 0 45px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:700}h1{font-size:clamp(42px,7vw,76px);line-height:1.1;letter-spacing:-.04em;margin:18px 0}h2{font-size:25px;line-height:1.25;margin:0 0 20px}h3{font-size:20px;line-height:1.3;margin:12px 0}p{margin:0 0 12px}.lead{font-size:21px;color:var(--muted)}.notice{margin-top:32px;border:1px solid #cfddc9;background:#f0f6ed;border-radius:14px;padding:20px 24px;display:flex;gap:15px;max-width:800px}.notice p{color:#4d6145;margin:4px 0 0;font-size:15px}.dot{width:9px;height:9px;flex:none;background:#4d783b;border-radius:50%;margin-top:9px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:25px}.grid p{color:var(--muted);font-size:15px;margin:0}.step{font-size:13px;font-weight:750;color:var(--accent)}.archive{margin-top:40px;border-top:1px solid var(--line);padding:32px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}.archive h2{margin-bottom:8px}.archive p{color:var(--muted);max-width:670px;margin:0}.button{flex:none;background:var(--ink);color:white;text-decoration:none;padding:12px 20px;border-radius:8px;font-weight:600}footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:13px}@media(max-width:700px){.grid{grid-template-columns:1fr}.hero{padding-top:40px}.archive{align-items:start;flex-direction:column}.header{flex-wrap:wrap}.notice{padding:18px}.lead{font-size:18px}}
.workspace{padding:32px 0;min-height:65vh}h1{font-size:clamp(28px,5vw,44px);line-height:1.2}.hero h1{font-size:clamp(42px,7vw,76px)}.nav,.tabs,.stop-nav{width:min(1080px,calc(100% - 40px));margin:18px auto;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.tabs,.stop-nav{width:auto;margin:24px 0}.nav a,.tabs a,.stop-nav a{padding:8px 12px;border-radius:8px;text-decoration:none;background:#f0e7d8}.tabs a[aria-current],.stop-nav a[aria-current]{background:var(--ink);color:white}.nav form{margin:0}.panel{background:white;border:1px solid var(--line);padding:24px;border-radius:12px;margin:20px 0}.narrow{max-width:500px;margin:40px auto}.stack{display:grid;gap:16px}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:18px 0}.fields button{align-self:end}label{display:block;font-size:14px;font-weight:600;margin:8px 0}input,select,textarea{display:block;width:100%;font:inherit;padding:10px 12px;border:1px solid #cbbcaa;border-radius:6px;background:white;color:var(--ink);margin-top:5px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.inline{display:flex;align-items:center;gap:8px;font-weight:400}.inline input{width:auto;margin:0}button{font:inherit;font-weight:600;color:white;background:var(--ink);border:0;border-radius:7px;padding:10px 18px;cursor:pointer}.small{font-size:13px;padding:6px 10px}.secondary{background:#eadcc7;color:var(--ink)}.plain{background:none;color:var(--accent);padding:6px}.actions,.heading,.add-person{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:22px 0}.heading{justify-content:space-between}.heading h1,.heading h2{margin:0}.add-person label{flex:1;min-width:180px}.muted,.hint{color:var(--muted)}.hint{font-size:14px}.alert{padding:14px 18px;border-radius:8px;margin:16px 0}.error{background:#fce8e3;color:#812818}.success{background:#e9f3e2;color:#355129}.warning{background:#fff1ce;color:#6f4a0d}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;margin:20px 0}table{width:100%;border-collapse:collapse;text-align:left;background:white}td,th{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}thead th,tfoot{background:#f1e9dd}thead th{font-size:13px}tbody th{font-weight:600}td form{margin:0}.entry-table{min-width:740px}.entry-table th{min-width:110px}.entry-table td:nth-child(2){width:170px}.entry-table td:nth-child(3){width:95px}.entry-table td:nth-child(4){min-width:290px}.entry-table .inline{font-size:12px}summary{cursor:pointer;font-weight:650}.photo-grid,.edition-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin:20px 0}.photo-grid img{width:100%;height:155px;object-fit:cover;border-radius:8px}.photo-grid a{display:block}.card{margin:0;text-decoration:none;color:var(--ink)}.card:hover{border-color:var(--accent)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0}.stats article{border:1px solid var(--line);border-radius:10px;padding:20px;background:white}.stats strong{display:block;font-size:32px;color:var(--accent)}.stats span{font-size:14px}.actions [data-save-status]{color:var(--muted);font-size:13px}blockquote{margin:12px 0;padding:14px 18px;border-left:3px solid #c79246;background:#faf6ee}button:disabled{opacity:.5;cursor:default}tr[hidden]{display:none}@media(max-width:700px){.stats{grid-template-columns:1fr}.panel{padding:16px}.nav{gap:6px}.entry-table{min-width:0}.entry-table thead{display:none}.entry-table tbody,.entry-table tr,.entry-table th,.entry-table td{display:block;width:100%}.entry-table tr{border-bottom:2px solid var(--line);padding:12px 0}.entry-table tr[hidden]{display:none}.entry-table td{border:0;padding:6px 12px}.entry-table td:nth-child(n){width:100%;min-width:0}.entry-table th{border:0}.entry-table input[type=number]{max-width:110px}.fields{grid-template-columns:1fr}}
dialog{border:1px solid var(--line);border-radius:12px;padding:25px;width:min(500px,90vw);color:var(--ink)}dialog::backdrop{background:#29221c88}#new-person-error{color:#812818}#new-person-open{margin-bottom:20px}
.entry-table [data-change-person]{display:block;text-align:left;margin-top:6px}#change-person-error{color:#812818}
.public-nav{width:min(1080px,calc(100% - 40px));margin:0 auto;display:flex;gap:26px;align-items:center;border-bottom:1px solid var(--line);padding:13px 0;font-size:14px}.public-nav a{text-decoration:none;color:var(--muted)}.public-nav a[aria-current]{color:var(--ink);font-weight:700}@media(max-width:600px){.public-nav{font-size:13px;padding:11px 0;gap:24px}}


.public-site{position:relative;isolation:isolate}.page-beer-background{position:absolute;inset:0 0 auto;z-index:-1;pointer-events:none;overflow:hidden;opacity:.4;mask-image:linear-gradient(to bottom,#000 0%,#000 12%,rgba(0,0,0,.8) 35%,rgba(0,0,0,.35) 65%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 12%,rgba(0,0,0,.8) 35%,rgba(0,0,0,.35) 65%,transparent 100%)}.page-beer-background img{display:block;width:100%;max-width:1280px;height:auto;margin:0 auto}
.person-autocomplete{position:relative;flex:1;min-width:180px}.person-suggestions{position:absolute;top:100%;left:0;right:0;z-index:20;max-height:240px;overflow-y:auto;border:1px solid var(--line);border-radius:6px;background:white;box-shadow:0 8px 22px #29221c22}.person-suggestions button{display:block;width:100%;text-align:left;border-radius:0;padding:10px 12px;background:white;color:var(--ink);font-weight:400}.person-suggestions button:hover,.person-suggestions button[aria-selected=true]{background:#f0e7d8}.person-suggestions p{padding:10px 12px;margin:0;color:var(--muted)}#person-search-error{color:#812818}.add-person>select[hidden]{display:none}
.add-person{align-items:flex-end}.add-person .person-autocomplete label{margin:0 0 8px}.add-person .person-autocomplete input{margin-top:0}.add-person #add-person{min-height:46px}
