.tabs.compact{flex-wrap:wrap;gap:4px;margin:0}.tabs.compact .tab{flex:none;min-width:0;padding:5px 10px;font-size:13px}.owner-cards{gap:16px;margin-top:12px;display:grid}.owner-card h2{font-family:var(--display);margin:0 0 6px;font-size:18px}.owner-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.owner-code{letter-spacing:1px;background:var(--sel);word-break:break-all;border-radius:8px;padding:6px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}.owner-meta{flex-wrap:wrap;gap:12px;margin:4px 0 0;display:flex}:root{--bg:#faf6f0;--surface:#fffdfb;--sel:#f7e8d6;--hair:#ede4d8;--ink:#33363a;--ink2:#5c636b;--tint:#f05a28;--tintInk:#a6390f;--tintAction:#d1441a;--onTint:#fff;--accent:#1f5e86;--route:#2e9e6b;--danger:#c8322f;--dangerSoft:#fbe9e8;--warnInk:#8a5a00;--warnSoft:#fff3d6;--okInk:#1f7a3f;--okSoft:#e6f4ea;--focus:#f05a2838;--shadow:0 1px 2px #33363a0f, 0 8px 24px #33363a14;--display:"Nunito", ui-rounded, -apple-system, system-ui, sans-serif;--body:"Source Sans 3", -apple-system, system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#1b1e22;--surface:#26292e;--sel:#33363a;--hair:#33363a;--ink:#f2f0ec;--ink2:#a9afb6;--tint:#f27149;--tintInk:#f79066;--tintAction:#d1441a;--onTint:#fff;--accent:#7dbce8;--route:#4dbf8a;--danger:#f28b86;--dangerSoft:#3a2a2a;--warnInk:#f2c46d;--warnSoft:#3a3225;--okInk:#7dd39c;--okSoft:#24352b;--focus:#f2714952;--shadow:0 1px 2px #0006, 0 8px 24px #00000059}}:root[data-theme=dark]{--bg:#1b1e22;--surface:#26292e;--sel:#33363a;--hair:#33363a;--ink:#f2f0ec;--ink2:#a9afb6;--tint:#f27149;--tintInk:#f79066;--tintAction:#d1441a;--onTint:#fff;--accent:#7dbce8;--route:#4dbf8a;--danger:#f28b86;--dangerSoft:#3a2a2a;--warnInk:#f2c46d;--warnSoft:#3a3225;--okInk:#7dd39c;--okSoft:#24352b;--focus:#f2714952;--shadow:0 1px 2px #0006, 0 8px 24px #00000059}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:16.5px;line-height:1.55}img{max-width:100%;height:auto}a{color:var(--accent)}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;font-weight:800}h1{margin:0 0 8px;font-size:clamp(1.5rem,1.1rem + 1.6vw,1.9rem);line-height:1.12}h1 .muted{font-weight:700}p{text-wrap:pretty;margin:0 0 14px}.shell{flex-direction:column;min-height:100vh;display:flex}.wrap{width:100%;max-width:1000px;margin:0 auto;padding:0 24px}.nav{align-items:center;gap:14px;padding:18px 0;display:flex}.nav .brand{font-family:var(--display);color:var(--ink);flex:0 auto;align-items:center;gap:9px;min-width:0;font-size:19px;font-weight:800;text-decoration:none;display:flex}.nav .brand .logo-light{object-fit:contain;object-position:left center;width:auto;max-width:100%;height:56px;display:block}.nav .brand .logo-dark{align-items:center;gap:9px;display:none}.nav .brand .logo-dark img{border-radius:50%;width:26px;height:26px}.nav .brand .r{color:var(--tintInk)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .nav .brand .logo-light{display:none}:root:not([data-theme=light]) .nav .brand .logo-dark{display:flex}}:root[data-theme=dark] .nav .brand .logo-light{display:none}:root[data-theme=dark] .nav .brand .logo-dark{display:flex}.brand-badge{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--tintInk);background:var(--sel);border:1px solid var(--hair);white-space:nowrap;border-radius:999px;flex:none;padding:4px 11px;font-size:12px;font-weight:700}.nav .links{flex:none;align-items:center;gap:16px;margin-left:auto;display:flex}.nav .links a:not(.btn){color:var(--ink2);font-size:15.5px;font-weight:600;text-decoration:none}.nav .links a:not(.btn):hover{color:var(--ink)}.main{flex:1;width:100%;max-width:900px;margin:0 auto;padding:22px 24px 64px}footer{border-top:1px solid var(--hair);color:var(--ink2);margin-top:48px;padding:28px 0 48px;font-size:14px}footer a{color:var(--ink2)}footer .cols{overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:10px 26px;display:flex}footer .credits{margin-top:14px;font-size:12.5px;line-height:1.6}.card{background:var(--surface);border:1px solid var(--hair);box-shadow:var(--shadow);border-radius:20px;margin-bottom:18px;padding:26px 28px 28px}.card.narrow{max-width:480px;margin:28px auto}.card .card.narrow{box-shadow:none;background:0 0;border:0;margin:0 auto 8px;padding:0}.card.empty{text-align:center;padding:48px 28px 40px}.card.empty p{max-width:52ch;color:var(--ink2);margin:0 auto 20px}.glyph{object-fit:contain;border:1px solid var(--hair);background:#fff;border-radius:999px;width:84px;height:84px;margin:0 auto 14px;padding:14px;display:block}.card.narrow h1,.hero-card h1{text-align:center}.tagline{text-align:center;color:var(--tintInk);font-family:var(--display);margin:0 0 12px;font-weight:700}.hero{grid-template-columns:minmax(0,1fr) minmax(0,460px);align-items:stretch;gap:28px;margin-top:18px;display:grid}.hero-art{border:1px solid var(--hair);min-height:420px;box-shadow:var(--shadow);background:var(--sel);border-radius:26px;overflow:hidden}.hero-art img{object-fit:cover;width:100%;height:100%;display:block}.hero-card{margin:0}@media (width<=760px){.hero{grid-template-columns:1fr}.hero-art{min-height:180px;max-height:220px}}.wide{width:100%}.muted{color:var(--ink2)}.small{font-size:14px}.tiny{font-size:13px}.center{text-align:center}.clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0;display:-webkit-box;overflow:hidden}.tabs{gap:8px;margin:18px 0;display:flex}.tab{font-family:var(--display);color:var(--ink2);border:1.5px solid var(--hair);cursor:pointer;background:0 0;border-radius:999px;flex:1;padding:8px 14px;font-size:14.5px;font-weight:700}.tab:hover{color:var(--ink)}.tab.active{background:var(--sel);color:var(--tintInk);border-color:var(--tintInk)}.stack{flex-direction:column;gap:14px;display:flex}label{color:var(--ink);flex-direction:column;gap:6px;font-size:13.5px;font-weight:600;display:flex}.field-title{font-size:13.5px;font-weight:600}input,select,textarea{font:inherit;border:1px solid var(--hair);background:var(--bg);color:var(--ink);border-radius:12px;padding:10px 14px;font-size:16px;font-weight:400}input::placeholder,textarea::placeholder{color:var(--ink2);opacity:.8}input:focus,select:focus,textarea:focus{border-color:var(--tint);box-shadow:0 0 0 3px var(--focus);outline:none}textarea{resize:vertical}.btn{font-family:var(--display);border:1.5px solid var(--hair);background:var(--surface);color:var(--ink);cursor:pointer;text-align:center;border-radius:999px;padding:10px 18px;font-size:15.5px;font-weight:700;line-height:1.25;text-decoration:none;display:inline-block}.btn:hover{background:var(--sel)}.btn.primary{color:#fff;background:#d1441a;border-color:#d1441a}.btn.primary:hover{filter:brightness(1.06);background:#d1441a}.btn.ghost{color:var(--tintInk);background:0 0}.btn.ghost:hover{background:var(--sel)}.btn.small{padding:6px 13px;font-size:14px}.btn.danger{color:var(--danger)}.btn.danger:hover{background:var(--dangerSoft);border-color:var(--dangerSoft)}.btn:disabled{opacity:.55;cursor:default;filter:none}.btn.block{margin:6px 0 2px;display:block}.linkish{font-family:var(--display);color:var(--tintInk);cursor:pointer;text-align:center;background:0 0;border:none;width:100%;margin-top:16px;padding:0;font-size:14px;font-weight:700;display:block}.linkish:hover{text-underline-offset:3px;text-decoration:underline}.linkish.back{text-align:left;color:var(--ink2);margin:0 0 12px}.divider{color:var(--ink2);align-items:center;gap:12px;margin:16px 0;font-size:12.5px;font-weight:600;display:flex}.divider:before,.divider:after{content:"";background:var(--hair);flex:1;height:1px}.error{color:var(--danger);margin:0;font-size:14px}.notice{color:var(--ink);background:var(--sel);border-radius:12px;margin:0;padding:10px 14px;font-size:14px}.concern{background:var(--surface);border:1px solid var(--hair);border-left:3px solid var(--tint);border-radius:0 14px 14px 0;padding:14px 18px}.concern-text{font-family:var(--display);margin:0 0 6px;font-weight:700}.concern-detail{color:var(--ink2);margin:0 0 12px;font-size:15px}.coord-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.coord-row label{flex:1;min-width:120px}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.form-actions.spread{justify-content:space-between;align-items:center;margin-top:12px}.photo-field{flex-direction:column;gap:8px;display:flex}.photo-preview{border:1px solid var(--hair);border-radius:14px;width:100%;max-width:340px;display:block}.photo-actions{gap:8px;display:flex}.photo-actions .btn.small{cursor:pointer}.stars-field{flex-direction:column;gap:6px;display:flex}.stars-pick{gap:8px;display:flex}.stars-pick .tab{letter-spacing:1px;flex:none;min-width:68px}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 18px;margin:8px 0 20px;display:flex}.dash-head p{margin:0}.dash-actions{flex-wrap:wrap;gap:8px;display:flex}.town-select{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:0;padding:4px 32px 4px 0;font-size:22px;font-weight:800}.town-select:focus{box-shadow:none;outline:2px solid var(--focus);outline-offset:4px}.lang-select{background:var(--surface);border-radius:999px;padding:7px 12px;font-size:14px}.place-list{background:var(--surface);border:1px solid var(--hair);box-shadow:var(--shadow);border-radius:20px;padding:4px 22px}.place{justify-content:space-between;gap:16px;padding:18px 0;display:flex}.place+.place{border-top:1px solid var(--hair)}.place.inactive .place-main,.place.inactive .place-thumb{opacity:.5}.place-main{flex:1;min-width:0}.place-main p{margin:0}.place-main .clamp{margin:4px 0 6px}.place-main a{color:var(--ink2)}.place-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.place-title strong{font-family:var(--display);font-size:17px;font-weight:700}.place-actions{flex-shrink:0;align-items:flex-start;gap:6px;display:flex}.place-thumb{object-fit:cover;border:1px solid var(--hair);border-radius:12px;flex-shrink:0;width:74px;height:74px}.chip{color:var(--ink);background:var(--sel);border:1px solid var(--hair);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.chip.off,.chip.dup{color:var(--ink2);background:0 0}.chip.stars{color:var(--tintInk);letter-spacing:1px}.chip.ready,.chip.new{color:var(--okInk);background:var(--okSoft);border-color:#0000}.chip.needs{color:var(--warnInk);background:var(--warnSoft);border-color:#0000}.chip.err{color:var(--danger);background:var(--dangerSoft);white-space:normal;border-color:#0000}.format-line{background:var(--sel);border-radius:10px;margin:6px 0 10px;padding:8px 12px;font-size:13px;display:block;overflow-x:auto}textarea.mono{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.table-wrap{background:var(--bg);border:1px solid var(--hair);border-radius:14px;margin:10px 0;overflow-x:auto}.import-table{border-collapse:collapse;width:100%;font-size:14px}.import-table th,.import-table td{text-align:left;border-bottom:1px solid var(--hair);vertical-align:top;padding:9px 12px}.import-table tr:last-child td{border-bottom:0}.import-table th{background:var(--bg);font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;color:var(--ink2);font-size:11px;font-weight:700;position:sticky;top:0}.import-table tr.error td{background:var(--dangerSoft)}.import-table .stars-cell{color:var(--tintInk);white-space:nowrap}.import-table td.tiny,.import-table td.muted{font-variant-numeric:tabular-nums}.progress{background:var(--sel);border-radius:999px;height:8px;margin:14px 0;overflow:hidden}.progress-fill{background:var(--tintAction);height:100%;transition:width .3s}.check-status{background:var(--sel);border-radius:12px;margin:10px 0 14px;padding:12px 14px;font-size:15px}.import-banner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.import-banner-actions{gap:6px;display:flex}@media (width<=600px){.wrap,.main{padding-left:18px;padding-right:18px}.nav,.nav .links{gap:10px}.nav .links a.hide-sm,.brand-badge{display:none}.nav .brand .logo-light{height:44px}.card{padding:20px 20px 22px}.place-list{padding:2px 18px}.place{flex-direction:column}}
