:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7d6d0;--surface:#fff6e5;--text:#4a2545;--muted:#6f4c5e;--line:#a8312f;--accent:#a8312f;--accent-text:#fff6e5;--mustard:#e3a72f;--sky:#b5d5da;--mark:#f3d27a;--title:Futura, "Century Gothic", "Trebuchet MS", sans-serif;--prose:Baskerville, "Baskerville Old Face", Georgia, serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font:18px/1.4 var(--prose);-webkit-text-size-adjust:100%;margin:0}h1,h2,p,ul{margin:0}h1,h2,.bar-link,.button,.add-button,.danger,.form label:not(.button){font-family:var(--title);letter-spacing:.14em;text-transform:uppercase}h1{font-size:17px;font-weight:500}h2{color:var(--accent);text-align:center;margin-bottom:12px;font-size:14px;font-weight:500}a{color:inherit;text-decoration:none}.screen{max-width:640px;min-height:100dvh;padding:0 16px calc(104px + env(safe-area-inset-bottom));margin:0 auto}.muted{color:var(--muted);font-size:16px;font-style:italic}.empty{color:var(--muted);text-align:center;padding:32px 8px;font-style:italic}.title-card{margin-top:calc(16px + env(safe-area-inset-top));border:3px double var(--line);background:var(--surface);text-align:center;padding:20px 12px 18px}.title-card h1{color:var(--accent);font-size:25px;line-height:1.25}.title-card p{margin-top:8px}.search-bar{z-index:2;padding:calc(12px + env(safe-area-inset-top)) 16px 12px;background:var(--bg);margin:0 -16px 8px;position:sticky;top:0}.bar{z-index:2;padding:env(safe-area-inset-top) 16px 0;background:var(--surface);border-bottom:3px double var(--line);grid-template-columns:minmax(64px,1fr) minmax(0,auto) minmax(64px,1fr);align-items:center;gap:8px;margin:0 -16px 16px;display:grid;position:sticky;top:0}.bar h1{color:var(--accent);text-align:center;text-overflow:ellipsis;white-space:nowrap;grid-column:2;overflow:hidden}.bar>.bar-link:first-child{grid-column:1;justify-self:start}.bar>.bar-link:last-child:not(:first-child){grid-column:3;justify-self:end}.bar-link{min-height:48px;color:var(--text);background:0 0;border:0;align-items:center;padding:0;font-size:13px;display:inline-flex}.strong{color:var(--accent);font-weight:600}input[type=text],input[type=search]{border:1px solid var(--line);background:var(--surface);width:100%;min-height:48px;color:var(--text);font:18px var(--prose);appearance:none;border-radius:0;padding:10px 12px}input[type=search]{text-align:center}input::placeholder{color:var(--muted);opacity:1;font-style:italic}input:focus-visible,button:focus-visible,a:focus-visible,.button:focus-within{outline:2px solid var(--text);outline-offset:2px}.list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.list .empty{grid-column:1/-1}.card{border:1px solid var(--line);background:var(--surface);text-align:center;flex-direction:column;gap:8px;padding:8px 8px 12px;display:flex}.thumb{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.thumb-empty{background:var(--sky);color:var(--text);justify-content:center;align-items:center;font-size:14px;font-style:italic;display:flex}.thumb-empty:after{content:"No photograph"}.card-body{flex-direction:column;align-items:center;min-width:0;display:flex}.card-body strong{overflow-wrap:anywhere;max-width:100%;color:var(--accent);font:500 15px/1.3 var(--title);letter-spacing:.12em;text-transform:uppercase}.items-line{overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:6px;font-size:15px;line-height:1.3;display:-webkit-box;overflow:hidden}mark{background:var(--mark);color:inherit}.add-button{left:50%;bottom:calc(20px + env(safe-area-inset-bottom));z-index:3;border:3px double var(--text);background:var(--mustard);min-width:168px;color:var(--text);text-align:center;padding:15px 24px;font-size:15px;font-weight:600;position:fixed;transform:translate(-50%)}.location{color:var(--muted);text-align:center;margin-bottom:16px;font-style:italic}.location:before{content:"— "}.location:after{content:" —"}.gallery{scroll-snap-type:x mandatory;gap:12px;margin:0 -16px 20px;padding:0 16px;display:flex;overflow-x:auto}.gallery img{border:1px solid var(--line);background:var(--surface);object-fit:contain;scroll-snap-align:center;flex:none;width:100%;max-width:480px;max-height:60dvh;margin:0 auto;padding:8px}.item-list{counter-reset:item;border:3px double var(--line);background:var(--surface);padding:4px 16px;list-style:none}.item-list li{counter-increment:item;overflow-wrap:anywhere;grid-template-columns:44px 1fr;align-items:baseline;padding:11px 0;display:grid}.item-list li:before{color:var(--accent);content:counter(item, upper-roman) ".";font:500 13px var(--title);letter-spacing:.08em}.item-list li+li{border-top:1px dotted var(--line)}.danger{width:100%;min-height:48px;color:var(--accent);background:0 0;border:0;margin-top:32px;font-size:13px;display:block}.form label:not(.button){color:var(--accent);text-align:center;margin-bottom:16px;font-size:13px;font-weight:500;display:block}.form label:not(.button) input{letter-spacing:normal;text-align:center;text-transform:none;margin-top:6px;font-weight:400;display:block}.form section{margin-top:26px}.form .muted{text-align:center}.button{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--text);border-radius:0;flex:1;justify-content:center;align-items:center;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.button.primary{border-color:var(--text);background:var(--mustard);color:var(--text)}.photo-actions,.item-form{gap:8px;display:flex}.item-form .button{flex:none}.visually-hidden{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.photo-grid{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.photo-grid:not(:empty){margin-bottom:12px}.photo-tile{border:1px solid var(--line);background:var(--surface);width:104px;height:104px;padding:5px;position:relative}.photo-tile img{object-fit:cover;width:100%;height:100%;display:block}.photo-tile button{width:44px;height:44px;color:var(--surface);text-shadow:0 1px 3px var(--text);background:0 0;border:0;font-size:22px;position:absolute;top:0;right:0}.chips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:12px;padding:0;list-style:none;display:flex}.chips li{border:1px solid var(--line);background:var(--sky);overflow-wrap:anywhere;align-items:center;max-width:100%;padding-left:12px;display:flex}.chips button{width:40px;height:40px;color:var(--text);background:0 0;border:0;flex:none;font-size:20px}#toast{left:16px;right:16px;bottom:calc(24px + env(safe-area-inset-bottom));z-index:5;border:3px double var(--surface);background:var(--accent);color:var(--accent-text);text-align:center;padding:12px 16px;position:fixed}
