:root{--bg:#031526;--bg-soft:#06263d;--surface:#082741;--surface-2:#0d3350;--line:rgba(173,209,239,.2);--line-strong:rgba(208,231,251,.35);--text:#f6fbff;--muted:#9ab5d3;--accent:#ef8e3e;--accent2:#f6b159;--accent-ink:#311400;--success:#16a34a;--warning:#f59e0b;--danger:#dc2626;--success-soft:rgba(22,163,74,.2);--danger-soft:rgba(220,38,38,.2);--warning-soft:rgba(245,158,11,.2)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(circle at 14% -10%,rgba(34,90,135,.45),transparent 42%),radial-gradient(circle at 94% 0,rgba(239,142,62,.22),transparent 36%),linear-gradient(180deg,var(--bg),#02101f 55%,#020d1a);color:var(--text);font-family:Manrope,Avenir Next,Segoe UI,Helvetica Neue,Arial,sans-serif}body{min-height:100vh}h1,h2,h3,h4{margin:0;letter-spacing:-.01em}h1{font-size:1.85rem;line-height:1.15}h2{font-size:1.35rem;line-height:1.2}h3{font-size:1.08rem}a{color:inherit;text-decoration:none}button{font:inherit}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.topbar{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top);z-index:20;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(180deg,rgba(4,20,34,.93),rgba(4,20,34,.8))}.topbar-inner{max-width:1040px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:12px;position:relative;min-height:44px}.topbar-title{position:absolute;left:50%;transform:translateX(-50%);font-weight:800;letter-spacing:.45px;text-align:center;white-space:nowrap;color:#f2f8ff;pointer-events:none;text-shadow:0 1px 0 rgba(0,0,0,.2)}.brand{font-weight:700;letter-spacing:.3px}.brand-menu{position:relative;display:inline-flex}.brand-dot{margin:0;border:0;cursor:pointer;list-style:none;display:inline-flex;flex-direction:column;gap:4px;padding:4px 0;background:transparent;transition:transform .12s ease}.brand-dot::-webkit-details-marker,.brand-dot::marker{display:none}.brand-hamburger-line{width:20px;height:2px;border-radius:999px;background:#e7f2ff;display:block}.brand-dot:focus-visible,.brand-dot:hover{transform:scale(1.08)}.brand-dot:active{transform:scale(.95)}.brand-menu-panel{position:absolute;top:calc(100% + 8px);left:0;display:grid;grid-gap:4px;gap:4px;min-width:220px;padding:10px;border:1px solid var(--line-strong);border-radius:16px;background:linear-gradient(175deg,#0e3654,#082741);box-shadow:0 16px 32px rgba(0,0,0,.3);opacity:0;transform:translateY(-2px) scale(.98);transform-origin:top left;pointer-events:none;transition:opacity .14s ease,transform .14s ease;visibility:hidden}.brand-menu[open] .brand-menu-panel{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;visibility:visible}.brand-menu-item-button,.brand-menu-panel a{border:0;background:transparent;border-radius:10px;padding:8px 10px;width:100%;text-align:left}.brand-menu-item-button:focus-visible,.brand-menu-item-button:hover,.brand-menu-panel a:focus-visible,.brand-menu-panel a:hover{background:rgba(224,240,255,.14)}.brand-menu-item-button{color:inherit;font:inherit;cursor:pointer}.topbar-links{display:flex;gap:12px;margin-left:auto;font-size:14px;justify-content:flex-end}.topbar-links a{border-radius:12px;padding:9px 14px;border:1px solid var(--line-strong);background:rgba(151,197,235,.12);font-weight:700}.topbar-links a:focus-visible,.topbar-links a:hover{background:rgba(151,197,235,.24)}.page{max-width:1040px;margin:0 auto;padding:calc(18px + env(safe-area-inset-top)) 16px 28px;display:grid;grid-gap:18px;gap:18px}.centered{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:24px}.centered>.card{width:min(700px,100%)}.card{background:linear-gradient(165deg,var(--surface-2),var(--surface));border:1px solid var(--line-strong);border-radius:24px;padding:20px;box-shadow:0 20px 40px rgba(2,10,18,.42);position:relative;overflow:hidden;animation:card-rise .28s ease}.card:before{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid rgba(220,237,254,.12);border-radius:inherit;opacity:.7}.card-stack{display:grid;grid-gap:10px;gap:10px}.card.hero-card{background:radial-gradient(circle at 100% -20%,rgba(246,177,89,.28),transparent 46%),linear-gradient(170deg,#0f3553,#082741 64%)}.card .card{background:linear-gradient(165deg,#103958,#0a2e49);border-color:var(--line);border-radius:20px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.card+.card{margin-top:0}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.toolbar{display:grid;grid-gap:14px;gap:14px}.toolbar-inline{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}.field>span{font-weight:600;color:#ecf6ff;font-size:.95rem}.field input,.field select,.field textarea{background:#0c2f4a;border:1px solid var(--line-strong);border-radius:14px;padding:12px;color:var(--text)}.field input::placeholder,.field textarea::placeholder{color:rgba(160,193,224,.8)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(246,177,89,.28);outline-offset:1px}.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.muted-block{margin-top:0}.section-description{margin:0 0 4px}.card-footnote{margin:0;color:var(--muted);font-size:13px}.compact-auth-toolbar{align-items:end}.compact-field{margin-bottom:0;min-width:0;flex:1 1}.compact-message{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.button{border:1px solid var(--line-strong);border-radius:14px;background:#134061;color:#f8fbff;padding:12px 16px;font-weight:700;cursor:pointer;transition:transform .12s ease,opacity .12s ease,background .12s ease;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08)}.button:hover{transform:translateY(-1px);background:#1a4b70;opacity:.98}.button:disabled{opacity:.6;cursor:not-allowed}.button.primary{background:linear-gradient(90deg,var(--accent),var(--accent2));border-color:rgba(255,219,180,.55);color:var(--accent-ink)}.button.warn{background:#b91c1c;border-color:#ef4444}.big-button{border:1px solid rgba(255,219,180,.5);border-radius:20px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:var(--accent-ink);font-size:1.12rem;padding:22px;font-weight:700;box-shadow:0 14px 30px rgba(239,142,62,.35)}.big-button:focus-visible,.brand-dot:focus-visible,.button:focus-visible{outline:2px solid rgba(14,165,233,.35);outline-offset:2px}.muted{color:var(--muted)}.list{padding-left:18px;margin:0;display:grid;grid-gap:6px;gap:6px}.hr{height:1px;background:var(--line);margin:14px 0}.tag{border:1px solid var(--line-strong);background:rgba(141,190,231,.14);border-radius:999px;padding:6px 10px;font-size:12px;line-height:1;white-space:nowrap}.tag.muted{color:var(--muted)}.tag-status{background:rgba(245,158,11,.24);border-color:rgba(245,158,11,.62);color:#ffdcb3;font-size:12px}.tag-ok{background:rgba(34,197,94,.2);border-color:rgba(34,197,94,.52);color:#b8f7cd}.status-bar{border:1px solid var(--line-strong);border-radius:999px;padding:8px 12px;display:inline-flex;gap:8px;align-items:center;font-size:13px;background:#0d2f4a}.status-dot{width:11px;height:11px;border-radius:50%}.status-offline{background:#ef4444}.status-error{background:#dc2626}.status-pending{background:#f59e0b}.status-syncing{background:#0ea5e9;animation:pulse 1.2s infinite}.status-synced{background:#22c55e}@keyframes pulse{0%,to{opacity:.35}50%{opacity:1}}.admin-grid{display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px}.admin-action-row{display:grid;grid-gap:10px;gap:10px}.admin-filter-grid{display:grid;grid-gap:12px;gap:12px;margin-top:12px}.admin-filter-accordion{margin-top:10px;border:1px solid var(--line-strong);border-radius:16px;padding:12px;background:#0a2e49}.admin-filter-summary{cursor:pointer;font-weight:700}.admin-filter-fieldset{border:1px solid var(--line-strong);border-radius:14px;margin:0;padding:12px;background:#103554}.admin-filter-fieldset>legend{display:flex;width:100%;justify-content:space-between;align-items:center;gap:8px;font-weight:700}.admin-filter-fieldset>legend>.button{font-size:12px;padding:4px 8px;min-height:auto}.admin-filter-presets{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}.admin-filter-grid .field input,.admin-filter-grid .field select,.admin-filter-grid select{width:100%;min-width:0}.admin-filter-option-grid{display:grid;grid-gap:6px;gap:6px}.admin-filter-option{display:flex;align-items:center;gap:10px;min-height:30px}.admin-place-grid{display:grid;grid-gap:12px;gap:12px}.admin-place-card{display:block;border:1px solid var(--line-strong);border-radius:16px;padding:14px;background:linear-gradient(165deg,#123d5e,#0d2f49);text-decoration:none;color:inherit;transition:border-color .12s ease,transform .12s ease,background .12s ease}.admin-place-card:hover{background:linear-gradient(165deg,#18496d,#123a59);border-color:rgba(230,243,255,.45);transform:translateY(-2px)}.admin-place-card-title{font-weight:700;margin-bottom:4px}.admin-place-card-meta{display:grid;grid-gap:4px;gap:4px;color:var(--muted);font-size:14px;margin-bottom:2px}.admin-chip-row{display:flex;gap:6px;flex-wrap:wrap}.admin-subtitle{color:var(--muted);margin-top:4px}.queue-toolbar{display:grid;grid-gap:12px;gap:12px;margin-bottom:12px;align-items:center}.queue-list{margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}.queue-item,.queue-list .queue-item{list-style:none}.queue-item{border:1px solid var(--line-strong);border-radius:16px;padding:14px;background:linear-gradient(165deg,#103654,#0b2e49)}.queue-item-header{display:flex;justify-content:space-between;gap:10px;align-items:center}.queue-item-main{margin-top:5px;color:#dfeefe;font-size:14px}.queue-item-meta{margin-top:4px;font-size:12px;color:var(--muted)}.accuracy-pill{width:100%}.accuracy-chip{flex:1 1;min-width:200px}.accuracy-pill-row{margin-bottom:6px}.queue-link{display:inline-block;margin-top:6px;color:#7ec6ff;font-size:12px}.error-banner,.success-banner{border:1px solid transparent;border-radius:12px;padding:10px 12px;width:-moz-fit-content;width:fit-content}.success-banner{background:rgba(22,163,74,.22);border-color:rgba(34,197,94,.56);color:#b8f7cd}.error-banner{background:rgba(220,38,38,.22);border-color:hsla(0,91%,71%,.56);color:#fecaca}.ios-safe{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.media-preview{width:100%;border-radius:10px}.place-map{min-height:420px;border-radius:18px;border:1px solid var(--line)}.media-thumb{width:100%;border-radius:10px;display:block}pre{margin:0;padding:12px;border-radius:14px;border:1px solid var(--line);background:rgba(5,25,40,.75);color:#d7ebff;overflow:auto}.draft-empty,.media-empty{margin:0;padding:10px;border-radius:12px;border:1px dashed var(--line-strong);background:rgba(155,196,232,.12);color:var(--muted)}.runtime-debug{position:fixed;left:10px;right:10px;bottom:10px;z-index:999;max-width:min(520px,calc(100vw - 20px));background:#0a2a43;border:1px solid var(--line-strong);border-radius:12px;padding:8px 10px;box-shadow:0 12px 28px rgba(0,0,0,.32);font-size:11px;line-height:1.2;color:#f1f8ff}.runtime-debug-title{font-size:12px;font-weight:700;margin-bottom:6px}.runtime-debug-row{display:flex;justify-content:space-between;gap:10px}.runtime-debug-row+.runtime-debug-row{margin-top:4px}.runtime-debug-code{font-size:10px;opacity:.7;word-break:break-all;text-align:right}.runtime-debug-actions{margin-top:8px}.runtime-debug-msg{margin:6px 0 0;color:#9af1b6}.small-link{display:inline-block}.draft-edit-link{margin-left:10px}.home-page{max-width:760px;gap:16px}.home-auth-card,.home-hero-card,.home-install-card,.install-intro-card,.install-steps-card{padding:24px}.home-hero-card{text-align:left}.home-hero-card .button.primary{min-width:220px}.home-auth-card .toolbar{grid-template-columns:1fr}.home-install-shell .card{width:min(700px,100%)}.home-install-card{background:radial-gradient(circle at 100% -10%,rgba(246,177,89,.24),transparent 44%),linear-gradient(170deg,#0d3552,#082741 64%)}.install-page{max-width:760px;gap:16px}.install-intro-card h1{margin-bottom:6px}.install-steps-card ol{padding-left:20px;gap:10px}.sync-page{max-width:920px}.sync-card>h1{margin-bottom:4px}.sync-card .queue-toolbar{margin-top:14px}.sync-card .queue-item{border-radius:18px}.capture-page{max-width:960px}.capture-page .capture-wizard-card{padding:22px}.capture-page .capture-wizard-card .card{margin-top:8px}.capture-page .capture-wizard-card form.toolbar{gap:16px}.capture-page .capture-wizard-card .row .button{min-height:44px}.admin-dashboard-page{gap:20px}.admin-dashboard-intro .row{justify-content:flex-end}.admin-dashboard-queue .admin-place-card{min-height:170px}.admin-merge-page,.admin-place-merge-page{max-width:980px;gap:18px}.merge-controls-card,.merge-preview-card{padding:22px}.merge-controls-card>h1,.merge-preview-card>h2{margin-bottom:8px}.merge-pin-card{margin-top:10px}.admin-place-page{gap:18px}.admin-place-hero h1{margin-bottom:4px}.admin-place-grid-layout{gap:16px}.admin-place-edit-card .row{margin-top:12px}.admin-place-edit-card .row .button{flex:1 1 180px}.admin-place-provider-card .row{align-items:flex-start}.admin-place-access-card .card,.admin-place-duplicate-card .card{margin-top:10px}.admin-place-media-card figure{margin:0;display:grid;grid-gap:8px;gap:8px}.admin-place-media-card figcaption{color:var(--muted);font-size:13px}.admin-place-audit-card details{margin-top:8px;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:rgba(12,47,74,.6)}.admin-place-audit-card summary{cursor:pointer}.admin-auth-card,.admin-auth-page{max-width:700px}@keyframes card-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (min-width:860px){.home-auth-card .toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filter-presets{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid{grid-template-columns:1.5fr 1fr}.admin-dashboard-queue .admin-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.queue-toolbar{grid-template-columns:auto auto 1fr}.admin-action-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.topbar-title{white-space:nowrap;max-width:58vw;overflow:hidden;text-overflow:ellipsis}.page{padding-left:12px;padding-right:12px}.centered{padding-inline:12px}.card{border-radius:20px;padding:16px}.capture-page .capture-wizard-card,.home-auth-card,.home-hero-card,.home-install-card,.install-intro-card,.install-steps-card,.merge-controls-card,.merge-preview-card{padding:18px}.admin-action-row .button,.admin-place-edit-card .row .button,.toolbar .button{width:100%}.place-map{min-height:300px}.draft-edit-link{margin-left:0}}