@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-cyrillic-ext-400-normal-BwJdxs7r.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-ext-400-normal-BqOlcezh.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-cyrillic-400-normal-DjhbW-4D.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-400-normal-DkNBMcYd.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-greek-ext-400-normal-CpIwTHMM.woff2) format("woff2"),url(/assets/source-sans-3-greek-ext-400-normal-CN4VBqpr.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-greek-400-normal-DZReXJla.woff2) format("woff2"),url(/assets/source-sans-3-greek-400-normal-DyO2Yfz5.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-vietnamese-400-normal-CwtaIDr2.woff2) format("woff2"),url(/assets/source-sans-3-vietnamese-400-normal-eMQk7hmk.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-ext-400-normal-UNsKFIBq.woff2) format("woff2"),url(/assets/source-sans-3-latin-ext-400-normal-D5P-Ud2J.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-400-normal-DQi5PRDE.woff2) format("woff2"),url(/assets/source-sans-3-latin-400-normal-RR2C27NP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-cyrillic-ext-600-normal-6AhwUnSr.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-ext-600-normal-Cjpx_pje.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-cyrillic-600-normal-BnFu5nHC.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-600-normal-CloKWf-q.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-greek-ext-600-normal-DynePNDL.woff2) format("woff2"),url(/assets/source-sans-3-greek-ext-600-normal-CnpzyT-3.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-greek-600-normal-BSO157bq.woff2) format("woff2"),url(/assets/source-sans-3-greek-600-normal-B42bzTIr.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-vietnamese-600-normal-B2sTNYey.woff2) format("woff2"),url(/assets/source-sans-3-vietnamese-600-normal-BzH4Q14_.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-ext-600-normal-AEyhgUpm.woff2) format("woff2"),url(/assets/source-sans-3-latin-ext-600-normal-D2VZAM8_.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-600-normal-DeckBYAU.woff2) format("woff2"),url(/assets/source-sans-3-latin-600-normal-Ck0n4g8U.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #F1F4F4;--surface: #FFFFFF;--ink: #12232A;--muted: #526870;--line: #D3DDDE;--accent: #0E6A72;--accent-ink: #FFFFFF;--amber: #8F4F05;--amber-bg: #FBEBD0;--ok-bg: #D8EEEC;--danger: #A3261D;--danger-bg: #F8DDD9;--scrim: rgba(10, 20, 24, .86);--overlay: rgba(10, 20, 24, .62);--font-display: "Bricolage Grotesque Variable", "Helvetica Neue", Arial, sans-serif;--font-body: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0F1A1E;--surface: #16252B;--ink: #E6EEF0;--muted: #9DB0B6;--line: #2A3D44;--accent: #55C3CB;--accent-ink: #0A1A1D;--amber: #F0B25A;--amber-bg: #3A2A12;--ok-bg: #14383A;--danger: #FF8B80;--danger-bg: #3F1D1A;color-scheme:dark}}:root[data-theme=dark]{--bg: #0F1A1E;--surface: #16252B;--ink: #E6EEF0;--muted: #9DB0B6;--line: #2A3D44;--accent: #55C3CB;--accent-ink: #0A1A1D;--amber: #F0B25A;--amber-bg: #3A2A12;--ok-bg: #14383A;--danger: #FF8B80;--danger-bg: #3F1D1A;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.5;-webkit-text-size-adjust:100%}h1,h2,h3{font-family:var(--font-display);line-height:1.15;margin:0;text-wrap:balance}h1{font-size:clamp(1.7rem,5vw,2.4rem);font-weight:700;letter-spacing:-.02em}h2{font-size:1.3rem;font-weight:700}h3{font-size:1.1rem;font-weight:700}p{margin:0;max-width:65ch}a{color:var(--accent)}.mono{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.muted{color:var(--muted)}.shell{min-height:100vh;display:flex;flex-direction:column}.wrap{width:100%;max-width:1040px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}main.wrap{padding-block:24px 120px;display:flex;flex-direction:column;gap:20px;flex:1}.topbar{background:var(--surface);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px);position:sticky;top:0;z-index:20}.topbar .bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-block:6px;min-height:56px}.brand{font-family:var(--font-display);font-weight:700;font-size:1.2rem;color:var(--ink);text-decoration:none}.menu-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--line);border-radius:4px;cursor:pointer;padding:0;color:var(--ink)}.bars,.bars:before,.bars:after{display:block;width:20px;height:2px;background:currentColor;border-radius:1px;content:"";position:relative;transition:transform .15s,top .15s,opacity .15s}.bars:before{position:absolute;top:-6px;left:0}.bars:after{position:absolute;top:6px;left:0}.menu-btn[aria-expanded=true] .bars{background:transparent}.menu-btn[aria-expanded=true] .bars:before{top:0;transform:rotate(45deg)}.menu-btn[aria-expanded=true] .bars:after{top:0;transform:rotate(-45deg)}.menu{display:none;width:100%;flex-direction:column;border-top:1px solid var(--line);margin-top:6px}.menu[data-open=true]{display:flex}.nav,.who{display:flex;flex-direction:column}.who{border-top:1px solid var(--line)}.navlink{font:inherit;font-weight:600;background:none;color:var(--ink);border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 4px;min-height:48px;text-align:left;cursor:pointer;width:100%;display:flex;align-items:center}.who .navlink:last-child{border-bottom:0;color:var(--muted)}.navlink[aria-current=page]{color:var(--accent);box-shadow:inset 3px 0 0 var(--accent);padding-left:12px}@media(min-width:760px){.topbar .bar{flex-wrap:nowrap;gap:20px}.menu-btn{display:none}.menu,.menu[data-open=false]{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex:1;width:auto;border-top:0;margin-top:0;gap:12px}.nav,.who{flex-direction:row;gap:4px}.who{border-top:0}.navlink{width:auto;min-height:40px;border-bottom:2px solid transparent;padding:0 10px}.who .navlink:last-child{border-bottom:2px solid transparent}.navlink[aria-current=page]{box-shadow:none;border-bottom-color:var(--accent);padding-left:10px}}button{font-family:inherit}button.save{font:inherit;font-weight:600;background:var(--accent);color:var(--accent-ink);border:0;border-radius:4px;padding:10px 16px;cursor:pointer}button.save:disabled{opacity:.4;cursor:default}button.ghost{font:inherit;font-weight:600;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:8px 14px;cursor:pointer}button.ghost:disabled{opacity:.4;cursor:default}button.danger{color:var(--danger)}button:focus-visible,.input:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.actions{display:flex;align-items:center;gap:10px 12px;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:4px;min-width:0}.field>label,.field>.lab{font-size:.9rem;color:var(--muted)}.input,textarea{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:10px 12px;width:100%;min-width:0}textarea{min-height:96px;resize:vertical}.input:disabled,textarea:disabled{opacity:.6}.row2{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}fieldset{border:0;margin:0;padding:0;min-width:0;display:flex;flex-wrap:wrap;gap:8px}legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.chip{position:relative;display:inline-flex}.chip input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;width:100%;height:100%}.chip span{padding:7px 12px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:.95rem}.chip:has(input:checked) span{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.chip:has(input:focus-visible) span{outline:2px solid var(--accent);outline-offset:2px}.chip:has(input:disabled){opacity:.55}.panel{background:var(--surface);border:1px solid var(--line);padding:18px;display:flex;flex-direction:column;gap:14px;min-width:0}.notice{border:1px solid var(--line);background:var(--surface);padding:10px 14px;font-size:.95rem}.notice.warn{background:var(--amber-bg);color:var(--amber);border-color:transparent}.notice.err{background:var(--danger-bg);color:var(--danger);border-color:transparent}.status{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:3px;background:var(--amber-bg);color:var(--amber);display:inline-block;white-space:nowrap}.status.done{background:var(--ok-bg);color:var(--accent)}.pagehead{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 20px;flex-wrap:wrap}.pagehead>div{display:flex;flex-direction:column;gap:4px;min-width:0}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.tags li{border:1px solid var(--line);background:var(--surface);padding:3px 9px;border-radius:4px;font-size:.9rem}.search{display:flex;flex-direction:column;gap:12px}.filters{display:flex;flex-wrap:wrap;gap:8px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.card{background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;text-align:left;padding:0;cursor:pointer;color:inherit;font:inherit;min-width:0}.card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cover{aspect-ratio:4 / 3;width:100%;background-size:cover;background-position:center;border-bottom:1px solid var(--line);display:flex;align-items:flex-end;padding:10px;position:relative}.cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cover .kind,.carousel .kind{position:relative;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--overlay);padding:2px 7px;border-radius:3px}.cardbody{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;min-width:0}.cardbody h3{overflow-wrap:anywhere}.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.phototile{display:flex;flex-direction:column;gap:6px;min-width:0}.tags.small li{font-size:.78rem;padding:1px 7px}.tick{position:absolute;top:8px;left:8px;width:26px;height:26px;border-radius:4px;border:2px solid var(--surface);background:#0a141880}.tick.on{background:var(--accent);border-color:var(--accent-ink)}.tick.on:after{content:"";position:absolute;left:8px;top:3px;width:6px;height:12px;border:solid var(--accent-ink);border-width:0 3px 3px 0;transform:rotate(45deg)}.photo[aria-pressed=true]{outline:3px solid var(--accent);outline-offset:-3px}.tagpanel{border:1px solid var(--line);border-top:3px solid var(--accent);background:var(--surface);padding:14px;display:flex;flex-direction:column;gap:12px;min-width:0;position:sticky;bottom:env(safe-area-inset-bottom,0px);max-height:52vh;overflow-y:auto;z-index:15}.ghost[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.photo{position:relative;aspect-ratio:1 / 1;background:var(--surface);border:1px solid var(--line);padding:0;overflow:hidden;cursor:pointer}.photo img{width:100%;height:100%;object-fit:cover;display:block}.photo .x{position:absolute;top:6px;right:6px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:3px 8px;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.rows{margin:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}.rows>div{display:grid;grid-template-columns:1fr;gap:2px;padding:11px 0;border-bottom:1px solid var(--line)}@media(min-width:620px){.rows>div{grid-template-columns:200px minmax(0,1fr);gap:24px}}.rows dt{font-weight:600}.rows dd{margin:0;color:var(--muted);overflow-wrap:anywhere}.lightbox{position:fixed;inset:0;z-index:50;background:var(--scrim);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.lightbox img{max-width:100%;max-height:calc(100vh - 110px);object-fit:contain}.sync{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px)}.sync .wrap{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;padding-block:10px}.sync .info{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.pre{white-space:pre-line}.fielderr{color:var(--danger);font-size:.85rem}.input[aria-invalid=true]{border-color:var(--danger)}.flag{width:24px;height:16px;border:1px solid var(--line);flex:none;display:inline-block;vertical-align:middle;margin-right:8px}.chip span{display:inline-flex;align-items:center}.countrysum{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;border:1px solid var(--line);background:var(--surface);padding:10px 12px}.countrysum .flag{margin-right:0;width:30px;height:20px}.cs-name{font-weight:600}.cs-note{font-size:.9rem;flex:1 1 140px}.map{width:100%;height:280px;border:1px solid var(--line);background:var(--bg)}.contact{border:1px solid var(--line);background:var(--bg);padding:14px;display:flex;flex-direction:column;gap:12px;min-width:0}.csum{display:flex;flex-direction:column;gap:2px;min-width:0}.csum h3{overflow-wrap:anywhere}.panel.quiet{border-style:dashed;background:var(--surface);padding:12px}.phone{display:flex;gap:8px;align-items:stretch;min-width:0}.phone .input{flex:1}.dialbtn{display:inline-flex;align-items:center;white-space:nowrap}.dialbtn .flag{margin-right:6px}.msgprev{border:1px solid var(--line);background:var(--bg);padding:12px;max-height:220px;overflow-y:auto;font-size:.95rem;overflow-wrap:anywhere}.status.err{background:var(--danger-bg);color:var(--danger);white-space:normal}.toasts{position:fixed;left:0;right:0;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:70;display:flex;flex-direction:column;gap:8px;align-items:center;padding:0 max(16px,env(safe-area-inset-right,0px)) 0 max(16px,env(safe-area-inset-left,0px));pointer-events:none}.toast{pointer-events:auto;background:var(--ink);color:var(--bg);width:100%;max-width:520px;padding:10px 12px 10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:4px}.toast .ghost{color:var(--bg);border-color:var(--bg);flex:none}.qlist{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;border-top:1px solid var(--line);max-height:40vh;overflow-y:auto}.qlist li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.qname{overflow-wrap:anywhere;min-width:0;flex:1 1 180px}.carousel{position:relative;aspect-ratio:4 / 3;width:100%;border-bottom:1px solid var(--line);background:var(--bg);overflow:hidden}.track{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.track::-webkit-scrollbar{display:none}.slide{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always;padding:0;border:0;background-color:var(--bg);background-size:cover;background-position:center;cursor:pointer;display:block}.slide img{width:100%;height:100%;object-fit:cover;display:block}.carousel .kind{position:absolute;left:10px;bottom:10px}.cnav{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:4px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.cnav:disabled{opacity:0;pointer-events:none}.cnav.prev{left:8px}.cnav.next{right:8px}.cnav span{width:9px;height:9px;border:solid currentColor;border-width:0 2px 2px 0;display:block}.cnav.prev span{transform:rotate(135deg);margin-left:3px}.cnav.next span{transform:rotate(-45deg);margin-right:3px}.cnav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.carousel .count{position:absolute;top:10px;right:10px;font-family:var(--font-mono);font-size:.7rem;color:#fff;background:var(--overlay);padding:2px 7px;border-radius:3px}.dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:5px;pointer-events:none}.dots i{width:6px;height:6px;border-radius:50%;background:#ffffff80;display:block}.dots i.on{background:#fff}.cardlink{background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;width:100%}.cardlink:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.card .cardbody{align-items:flex-start}@media(prefers-reduced-motion:no-preference){.track{scroll-behavior:smooth}}.qrbox{display:flex;gap:16px 20px;align-items:center;flex-wrap:wrap}.qr{width:168px;height:168px;flex:none;border:1px solid var(--line);background:#fff;display:block}.qrside{display:flex;flex-direction:column;gap:10px;min-width:0;flex:1 1 220px}.qrlink{overflow-wrap:anywhere;font-size:.85rem}.qrbig{background:#fff;padding:12px;width:min(86vw,70vh,480px)}.qrbig .qr{width:100%;height:auto;border:0}.qrcap{color:#fff;text-align:center;max-width:36ch}.flow{position:fixed;inset:0;z-index:55;background:var(--bg);display:flex;flex-direction:column}.flowhead{background:var(--surface);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}.flowbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-block:10px}.flowbar h2{font-size:1.15rem}.flowhead .progress{border-radius:0;height:4px}.flowbody{flex:1;overflow-y:auto;padding-block:16px;display:flex;flex-direction:column;gap:14px;align-content:flex-start}.flowhint{font-weight:600;max-width:60ch}.flowgrid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.flowbar2{background:var(--surface);border-top:3px solid var(--accent);max-height:52vh;overflow-y:auto;padding-bottom:env(safe-area-inset-bottom,0px)}.flowtags{padding-block:12px;display:flex;flex-direction:column;gap:12px}.scrim{position:fixed;inset:0;z-index:60;background:var(--scrim);display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));overflow-y:auto}.dialog{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--danger);width:100%;max-width:480px;padding:20px;display:flex;flex-direction:column;gap:14px}.dialog.safe{border-top-color:var(--accent)}.dialog .name{font-weight:600;overflow-wrap:anywhere}button.save.danger{background:var(--danger);color:#fff}.login{max-width:420px;margin:8vh auto 0;width:100%}.progress{height:6px;background:var(--line);border-radius:3px;overflow:hidden;width:100%}.progress>i{display:block;height:100%;background:var(--accent)}.loading{color:var(--muted);padding:24px 0}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
