:root{--dark-bg: #1a1f2b;--dark-fg: #e8e4d9;--dark-muted: #9aa1b1;--dark-warn: #e0a86a;--dark-rule: #2b3140;--dark-danger: #f6a6a0;--bg: #fbfaf8;--fg: #1a1f2b;--muted: #5d6475;--warn: #8a4b1f;--rule: #e2ded6;--danger: #9e2020;color-scheme:light dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: var(--dark-bg);--fg: var(--dark-fg);--muted: var(--dark-muted);--warn: var(--dark-warn);--rule: var(--dark-rule);--danger: var(--dark-danger)}}:root[data-theme=dark]{--bg: var(--dark-bg);--fg: var(--dark-fg);--muted: var(--dark-muted);--warn: var(--dark-warn);--rule: var(--dark-rule);--danger: var(--dark-danger)}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 ui-sans-serif,system-ui,-apple-system,sans-serif;-webkit-text-size-adjust:100%}main{max-width:40rem;margin:0 auto;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom))}.shell{padding-bottom:9rem}.syncline{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem;font-size:.875rem;border-bottom:1px solid var(--rule)}.syncline button{padding:.35rem .75rem;min-height:2.25rem;font-size:.875rem}.subnav{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;border-bottom:1px solid var(--rule)}.subnav button{color:var(--fg);background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;margin-bottom:-1px}.subnav button[aria-selected=true],.subnav button.pressed{color:var(--fg);background:transparent;border-bottom-color:var(--fg);font-weight:600}.destinations{position:fixed;right:0;bottom:0;left:0;display:flex;gap:1px;padding-bottom:env(safe-area-inset-bottom);background:var(--rule);border-top:1px solid var(--rule)}.destinations button{flex:1;min-height:3.5rem;padding:.5rem .25rem;font-size:.8125rem;color:var(--fg);background:var(--bg);border:0;border-radius:0}.destinations button.pressed{font-weight:600;box-shadow:inset 0 3px 0 0 var(--fg)}.primary-action{position:fixed;right:1rem;bottom:calc(4.5rem + env(safe-area-inset-bottom));z-index:1;box-shadow:0 2px 8px #00000040}@media(min-width:60rem){main{padding-top:2rem}main:has(.shell){display:grid;grid-template-columns:11rem minmax(0,40rem);gap:2.5rem;justify-content:center;max-width:56rem}.shell{display:contents;padding-bottom:0}.destinations{position:sticky;top:2rem;right:auto;bottom:auto;left:auto;display:flex;flex-direction:column;gap:.25rem;align-self:start;grid-row:1 / span 5;padding:0;background:none;border:0}.destinations button{min-height:2.75rem;font-size:1rem;text-align:left}.destinations button.pressed{box-shadow:inset 3px 0 0 0 var(--fg)}.primary-action{position:static;box-shadow:none}}h1{margin:0;font-size:1.5rem;letter-spacing:-.01em}.landing{max-width:34rem;margin-inline:auto}.landing p{line-height:1.6}.landing-list{margin:0;padding-left:1.1rem}.landing-list li{margin-bottom:.5rem}.landing-verdicts{display:block;margin:1.25rem 0}.landing-verdicts dt{color:var(--fg);font-size:1rem;font-weight:600}.landing-verdicts dd{margin:.15rem 0 .9rem;padding-bottom:0;color:var(--muted);border-bottom:0}.lede{color:var(--muted);margin:.25rem 0 2rem}dl{margin:0;display:grid;grid-template-columns:minmax(8rem,auto) 1fr;gap:.75rem 1.5rem}dt{color:var(--muted);font-size:.875rem}dd{margin:0;padding-bottom:.75rem;border-bottom:1px solid var(--rule)}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.875em}.muted{color:var(--muted)}.warn{color:var(--warn)}h2{margin:0 0 .75rem;font-size:1.125rem}section,.section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--rule)}section:last-child,.section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}.field{margin-bottom:1rem}.field.inline{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.field.inline label{margin-bottom:0}.field-label{display:block;margin-bottom:.25rem;font-size:.875rem;font-weight:600}.choices{display:flex;flex-direction:column}label{display:block;margin-bottom:.25rem;font-size:.875rem;color:var(--muted)}input{width:100%;padding:.6rem .7rem;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--rule);border-radius:4px}input:focus-visible,button:focus-visible{outline:2px solid var(--fg);outline-offset:2px}input:disabled,button:disabled{opacity:.6;cursor:not-allowed}button{padding:.6rem 1.1rem;font:inherit;color:var(--fg);background:transparent;border:1px solid var(--muted);border-radius:4px;cursor:pointer}button.primary{color:var(--bg);background:var(--fg);border-color:var(--fg)}button.danger{color:var(--danger);border-color:var(--danger)}button.danger.primary{color:var(--bg);background:var(--danger);border-color:var(--danger)}button,select,textarea,input:not([type=checkbox]):not([type=radio]){min-height:2.75rem}label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:flex;align-items:center;gap:.5rem;min-height:2.75rem;margin-bottom:0}input[type=checkbox],input[type=radio]{width:1.35rem;height:1.35rem;padding:0;flex:none}button{min-width:2.75rem}.hint{margin:.35rem 0 0;font-size:.8125rem}[role=alert]{min-height:1.5rem;margin:0 0 .75rem;font-size:.875rem}.signed-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.signed-in p{margin:0}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-bottom:1rem}.segmented{display:flex}.segmented button{border-radius:0}.segmented button+button{margin-left:-1px}.segmented button:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.segmented button:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.segmented button[aria-pressed=true],.segmented button:focus-visible{position:relative;z-index:1}.log{margin:0;padding:0;list-style:none;font-size:.875rem;color:var(--muted)}.log li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.35rem 0;border-bottom:1px solid var(--rule);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.sync-state{grid-template-columns:minmax(6rem,auto) 1fr;margin-bottom:1rem}.sync-state dd{padding-bottom:.5rem}.grid-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:0 1rem}textarea{width:100%;padding:.6rem .7rem;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--rule);border-radius:4px;resize:vertical}select{max-width:100%;padding:.5rem;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--rule);border-radius:4px}button.pressed,button[aria-pressed=true],button[aria-selected=true]{color:var(--bg);background:var(--fg);border-color:var(--fg);font-weight:600}.catalog{margin:0;padding:0;list-style:none}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.75rem;margin:0 0 1rem;padding:0;list-style:none}.tile{display:flex;flex-direction:column;width:100%;min-height:0;padding:0;overflow:hidden;color:var(--fg);text-align:left;background:var(--bg);border:1px solid var(--rule);border-radius:6px}.tile-photo{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:var(--rule)}.tile-name{display:flex;align-items:center;width:100%;aspect-ratio:1;padding:.75rem;overflow:hidden;font-size:1rem;line-height:1.3;color:var(--fg);overflow-wrap:anywhere;background:var(--rule)}.tile-caption{display:block;padding:.5rem .6rem;font-size:.875rem;overflow-wrap:anywhere}.tile-caption .muted{display:block;margin-top:.15rem;font-size:.8125rem}.catalog>li{padding:.75rem 0;border-bottom:1px solid var(--rule)}.catalog-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.catalog-row>*,.row-main>*{min-width:0;overflow-wrap:anywhere}.catalog-row .actions{margin-bottom:0}.taxonomy-row{display:grid;grid-template-columns:1fr;gap:.5rem 1rem;align-items:start}@media(min-width:30rem){.taxonomy-row{grid-template-columns:1fr auto}}.taxonomy-children{margin:.5rem 0 0;padding:0 0 0 1rem;list-style:none;border-left:2px solid var(--rule)}.taxonomy-children>li+li{margin-top:.5rem}.photo-source{margin-top:.75rem}.photo-source .field.inline{margin-bottom:0}.photo-source .field.inline input{flex:1;width:auto;min-width:0}.choice{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem;border:1px solid var(--rule);border-radius:6px}.row-actions button{min-height:2.25rem;padding:.35rem .75rem;font-size:.875rem}.badge{margin-left:.5rem;padding:.1rem .4rem;font-size:.75rem;border:1px solid var(--rule);border-radius:3px;color:var(--muted)}.photos{margin-top:1.5rem}h3{margin:0 0 .5rem;font-size:1rem}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1rem;margin:0;padding:0;list-style:none}.thumb{display:block;width:100%;aspect-ratio:1;object-fit:cover;border:1px solid var(--rule);border-radius:4px}.thumb.muted{display:grid;place-items:center;font-size:1.5rem}.photo-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin-top:.5rem;font-size:.8125rem}.photo-actions button{padding:.25rem .5rem;font-size:.8125rem}.row-main{display:flex;gap:.75rem;align-items:flex-start;min-width:0}.row-open{flex:1;min-height:2.75rem;padding:0;color:inherit;font:inherit;text-align:left;background:transparent;border:0;border-radius:4px;cursor:pointer}.row-descriptors{display:block}.row-thumb{width:3.5rem;height:3.5rem;object-fit:cover;border:1px solid var(--rule);border-radius:4px;flex:none}.tag-list,.chips{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .5rem;padding:0;list-style:none}.tag-list li,.chips li{display:flex;align-items:center;gap:.25rem;padding:.15rem .2rem .15rem .5rem;font-size:.875rem;border:1px solid var(--rule);border-radius:999px}.tag-list button,.chips button{min-height:0;min-width:0;padding:0 .35rem;font-size:.875rem;line-height:1;color:var(--muted);background:none;border:0}.tag-add{display:flex;gap:.5rem}.tag-add input{flex:1}button.link{margin-top:.35rem;padding:0;font-size:.8125rem;color:var(--muted);background:none;border:0;text-decoration:underline}.custom-fields{margin-top:1.5rem}.custom-fields select[multiple]{min-height:5rem}.usage{margin-top:1.5rem}.review{max-width:28rem}.organize{max-width:34rem}.review-photo{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;border:1px solid var(--rule);border-radius:6px;margin-bottom:.75rem}.review-photo.muted{display:grid;place-items:center;font-size:.875rem}
