@font-face{font-family:Inter;font-style:normal;font-weight:400 900;font-display:swap;src:url('/static/fonts/inter-cyrillic.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:400 900;font-display:swap;src:url('/static/fonts/inter-latin.woff2') format('woff2');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{
  --ink:#0b0d0c;--paper:#f0eee6;--panel:#151816;--panel-2:#1c211e;--line:#343b36;
  --muted:#9da49f;--accent:#ff6438;--accent-2:#d8ff63;--jade:#7dd4ac;--danger:#ff776e;
  --header-h:0px;--sidebar:280px;--bottom-h:0px;--gutter:18px;
  color-scheme:dark
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;width:100%;height:100%;height:100dvh;overflow:hidden;background:var(--ink);color:var(--paper);font:14px/1.45 Inter,ui-sans-serif,system-ui,sans-serif;-webkit-text-size-adjust:100%;overscroll-behavior:none}
body:before{content:"";position:fixed;z-index:-1;inset:0;opacity:.16;background-image:linear-gradient(#fff1 1px,transparent 1px),linear-gradient(90deg,#fff1 1px,transparent 1px);background-size:32px 32px}
button,input,select,textarea{font:inherit}
button,select,input,textarea{border:1px solid var(--line);background:#181c19;color:var(--paper);border-radius:10px}
button{min-height:40px;cursor:pointer;padding:9px 14px;background:var(--accent);border-color:var(--accent);color:#130d0a;font-weight:800;letter-spacing:.01em;touch-action:manipulation;transition:filter .15s,transform .15s,background .15s,box-shadow .15s}
button:hover{filter:brightness(1.08)}button:active{transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}
button.secondary,.ghost{background:transparent;color:var(--paper);border-color:var(--line)}button.secondary:hover,.ghost:hover{background:#ffffff0b}.full{width:100%}.muted{color:var(--muted)}
.eyebrow{margin:0 0 7px;color:var(--accent);font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.22em;font-weight:900}
.auth-wrap{width:100%;height:100%;height:100dvh;display:grid;place-items:center;padding:max(20px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));overflow:auto;background:radial-gradient(circle at 76% 19%,#ff643824 0,transparent 31%),radial-gradient(circle at 18% 83%,#d8ff630e 0,transparent 29%),var(--ink)}
.auth-card{position:relative;width:min(100%,430px);padding:clamp(25px,5vw,44px);border:1px solid #444b46;border-radius:18px;background:#141715f5;box-shadow:0 32px 100px #000b,0 0 0 1px #ffffff08 inset}
.auth-card:before{content:"PRIVATE / 01";position:absolute;top:-26px;left:0;color:var(--muted);font-size:9px;letter-spacing:.2em}.auth-card h1{font-family:Inter,sans-serif;font-size:clamp(35px,8vw,46px);font-weight:850;line-height:.95;margin:8px 0 18px;letter-spacing:-.055em}.seal{float:right;display:grid;place-items:center;width:58px;height:58px;border:2px solid var(--accent);color:var(--accent);font:700 30px/1 Inter,sans-serif;border-radius:50%;transform:rotate(7deg)}
label{display:grid;gap:6px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em;margin:14px 0}input,select,textarea{width:100%;min-height:43px;padding:10px 11px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent)}form button{width:100%;margin-top:12px}.error{color:var(--danger);min-height:20px}
header{position:fixed;z-index:30;inset:0 0 auto var(--sidebar);height:64px;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:12px max(18px,env(safe-area-inset-right));pointer-events:none;transition:left .24s ease}
header:after{display:none}.brand{display:none;align-items:center;min-width:0;gap:11px}.brand>span{flex:none;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--accent);border-radius:50%;font:700 19px/1 Inter,sans-serif;color:var(--accent)}.brand>div{min-width:0}.brand b{font-size:15px;letter-spacing:-.025em}.brand b,.brand small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand small{max-width:320px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.top-actions{margin-left:auto;display:flex;min-width:0;gap:8px;align-items:center;padding:6px;border:1px solid #ffffff18;border-radius:13px;background:#101311e8;box-shadow:0 14px 36px #0007;backdrop-filter:blur(18px);pointer-events:auto}.top-actions select{width:clamp(150px,17vw,220px);padding:8px}.icon-btn{position:fixed;top:13px;left:calc(var(--sidebar) + 12px);width:42px;background:#101311e8;color:var(--paper);border:1px solid #ffffff18;font-size:20px;padding:6px;pointer-events:auto;box-shadow:0 10px 25px #0006;transition:left .24s ease}body.sidebar-collapsed header{left:0}body.sidebar-collapsed .icon-btn{left:12px}#sync-state{white-space:nowrap;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}#sync-state.online:first-letter{color:var(--accent-2)}#sync-state.offline{color:#ffb067}
aside{position:fixed;z-index:20;top:0;bottom:var(--bottom-h);left:0;width:var(--sidebar);padding:18px 16px max(24px,env(safe-area-inset-bottom));background:linear-gradient(180deg,#202522f2,#111412f4);border-right:1px solid #ffffff20;box-shadow:18px 0 44px #0005;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;transition:transform .24s ease;backdrop-filter:blur(18px)}
aside.closed{transform:translateX(-100%)}.side-brand{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:0 2px 15px;border-bottom:1px solid #ffffff18}.side-brand>span{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--accent);border-radius:50%;color:var(--accent);font-size:20px}.side-brand b,.side-brand small{display:block}.side-brand b{font-size:15px}.side-brand small{color:var(--muted);font-size:8px;letter-spacing:.16em}.sidebar-head{display:none;position:relative}.sidebar-head:after{content:"02";position:absolute;right:0;top:0;color:#414842;font-size:30px;font-weight:900}.sidebar-head h2{margin:0 0 20px;font:800 30px/.95 Inter,sans-serif;letter-spacing:-.05em}.search{position:relative;margin:13px 0}.search input{padding-right:35px}.search kbd{position:absolute;right:10px;top:11px;color:var(--muted)}.sidebar-collapse{position:fixed;z-index:2;left:calc(var(--sidebar) - 1px);top:50%;width:29px;min-height:64px;transform:translateY(-50%);padding:0;border:1px solid #ffffff18;border-left:0;border-radius:0 10px 10px 0;background:#1b201de8;color:var(--paper);font-size:22px}
.quick{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0 17px}.quick button{min-height:33px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:6px 9px;background:transparent;color:var(--muted);border-color:var(--line)}.quick button.active{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.sidebar-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:17px 0 12px;padding:4px;border:1px solid #ffffff12;border-radius:12px;background:#0d100e}.sidebar-tabs button{min-height:36px;padding:7px 10px;border:0;background:transparent;color:var(--muted);font-size:11px}.sidebar-tabs button.active{background:#252b27;color:var(--paper);box-shadow:0 5px 15px #0005}.sidebar-panel{min-height:120px}.hide-completed{display:flex;align-items:center;gap:10px;margin:0;padding:11px 12px;border:1px solid #ffffff12;border-radius:10px;background:#ffffff05;color:var(--paper);font-size:11px;text-transform:none;letter-spacing:0;cursor:pointer}.hide-completed input{width:18px;min-height:18px;margin:0;accent-color:var(--accent)}
.category-tools{display:flex;align-items:center;justify-content:space-between;margin:20px 1px 8px}.category-tools>b{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.category-tools span{display:flex;gap:4px}.category-tools button{min-height:28px;padding:4px 8px;border:0;background:transparent;color:var(--muted);font-size:10px}.category-tools button:hover{color:var(--paper);background:#ffffff0b}.categories{display:grid;grid-template-columns:1fr;gap:7px}.category-group{overflow:hidden;border:1px solid #ffffff0e;border-radius:11px;background:#ffffff025}.group-head{display:flex;align-items:center;width:100%;min-height:40px;padding:8px 10px;border:0;border-radius:0;background:#1a1f1b;color:var(--paper);text-align:left}.group-head span{flex:1;font-size:11px}.group-head small{margin-right:9px;padding:2px 7px;border-radius:999px;background:#ffffff09;color:var(--muted);font-size:9px}.group-head i{font-style:normal;color:var(--accent);transition:transform .18s}.category-group.collapsed .group-items{display:none}.category-group.collapsed .group-head i{transform:rotate(-90deg)}.group-items{padding:4px}.category{display:flex;align-items:center;min-height:42px;gap:9px;margin:0;padding:7px 8px;border:1px solid transparent;border-radius:8px;color:var(--muted);font-size:12px;text-transform:none;letter-spacing:0;cursor:pointer}.category:hover{background:var(--panel-2);border-color:#ffffff0d;color:var(--paper)}.category input{width:17px;min-height:17px;accent-color:var(--accent)}.category-name{min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category small{padding:2px 7px;border-radius:999px;background:#ffffff09;color:#7f8881;font-size:9px;font-variant-numeric:tabular-nums}.marker-symbol{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--marker);box-shadow:0 0 0 2px #0b0d0c;color:#fff;font-size:11px;font-weight:900}.locations{display:grid;gap:7px}.location-item{display:flex;align-items:center;width:100%;min-height:57px;padding:10px 12px;border-color:#ffffff12;background:linear-gradient(135deg,#1b201c,#141815);color:var(--paper);text-align:left}.location-item span{display:grid;gap:2px;min-width:0;flex:1}.location-item b{overflow:hidden;text-overflow:ellipsis;font-size:12px}.location-item small{color:var(--muted);font-size:9px;font-weight:500}.location-item i{font-size:18px;color:var(--accent);font-style:normal}.locations-empty{padding:20px 8px;text-align:center}.coverage{border-top:1px solid var(--line);margin-top:19px;padding:18px 2px 0}.coverage b{font-size:11px;text-transform:uppercase;letter-spacing:.09em}.coverage p{color:var(--muted);font-size:12px}
.category-group{border-radius:4px;border-color:#ffffff12}.group-head{min-height:38px;background:#252b27}.category{margin-bottom:4px;border-color:#ffffff0d;border-radius:2px;background:#ffffff06;color:#c6cbc7}.category:hover{background:#ffffff0d;border-color:#ffffff18}.category input{accent-color:#d8c46a}.marker-symbol{background:#151816!important;box-shadow:0 0 0 1px #ffffff20}.locations{gap:10px}.location-group{display:grid;gap:5px}.location-group h4{margin:5px 2px 1px;color:#d9c972;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.location-item{min-height:48px;padding:9px 11px;border-radius:3px;background:#ffffff06}.location-item b{font-size:11px}.location-item i{color:#d8c46a}
.sidebar-scrim{display:none;position:fixed;z-index:19;inset:calc(var(--header-h) + env(safe-area-inset-top)) 0 var(--bottom-h);min-height:0;padding:0;border:0;border-radius:0;background:#0009;backdrop-filter:blur(2px)}
#map-wrap{position:absolute;inset:0 0 var(--bottom-h) var(--sidebar);transition:left .24s ease;background:#171c1e;overflow:hidden}aside.closed~#map-wrap{left:0}
canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;-webkit-tap-highlight-color:transparent}canvas:active{cursor:grabbing}
.zoom{position:absolute;right:max(var(--gutter),env(safe-area-inset-right));top:var(--gutter);display:grid;border:1px solid #ffffff17;border-radius:12px;overflow:hidden;box-shadow:0 14px 34px #0008}.zoom button{width:44px;height:44px;min-height:44px;padding:0;border-radius:0;background:#151917e8;color:var(--paper);border:0;backdrop-filter:blur(14px)}.zoom button+button{border-top:1px solid var(--line)}.zoom button:first-child,.zoom button:last-child{border-radius:0}
.empty{position:absolute;inset:0;display:grid;place-content:center;text-align:left;padding:clamp(25px,7vw,70px);pointer-events:none}.empty>span{font:800 clamp(74px,12vw,160px)/.7 Inter,sans-serif;color:#202722}.empty h3{max-width:560px;font:800 clamp(26px,4vw,52px)/.96 Inter,sans-serif;margin:20px 0 10px;letter-spacing:-.055em}.empty p{max-width:500px;margin:0;color:var(--muted)}
.stats{position:absolute;left:max(var(--gutter),env(safe-area-inset-left));bottom:max(var(--gutter),env(safe-area-inset-bottom));display:flex;align-items:center;gap:18px;padding:12px 15px;background:#141816e8;border:1px solid #ffffff1a;border-radius:13px;box-shadow:0 16px 40px #0009;backdrop-filter:blur(16px)}.stats div:not(.progress-ring){display:grid}.stats b{font-size:19px}.stats small{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.1em}.progress-ring{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:conic-gradient(var(--accent) var(--progress,0%),#303631 0);position:relative}.progress-ring:after{content:"";position:absolute;inset:5px;border-radius:50%;background:var(--panel)}.progress-ring span{z-index:1;font-size:10px}
.marker-card{position:absolute;right:max(var(--gutter),env(safe-area-inset-right));bottom:max(var(--gutter),env(safe-area-inset-bottom));width:min(430px,calc(100% - 2*var(--gutter)));max-height:calc(100% - 2*var(--gutter));overflow:auto;padding:24px;background:#171b18f2;border:1px solid #ffffff1c;border-radius:16px;box-shadow:0 24px 70px #000c,0 0 0 1px #ffffff05 inset;backdrop-filter:blur(20px) saturate(1.12)}.marker-card:before{content:"OBJECT / CARD";display:block;margin-bottom:8px;color:var(--muted);font-size:8px;letter-spacing:.18em}.marker-card h3{font:800 27px/.98 Inter,sans-serif;margin:5px 0 8px;letter-spacing:-.045em}.marker-card .close,.admin>.close{position:absolute;right:10px;top:10px;width:40px;min-height:40px;background:transparent;color:var(--muted);font-size:20px;padding:3px 8px}.card-location{margin:0 0 14px;color:var(--jade);font-size:11px;font-weight:700}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:17px}.card-actions button{min-width:0}.marker-link{width:100%;margin-top:8px}.tags{display:flex;gap:5px;flex-wrap:wrap}.tags span{background:#28302b;color:var(--muted);padding:4px 8px;border-radius:999px;font-size:10px}.readonly{position:absolute;left:50%;top:15px;max-width:calc(100% - 120px);transform:translateX(-50%);padding:8px 12px;text-align:center;background:#53391feb;border:1px solid #b87a3e;border-radius:10px}
.admin{position:fixed;z-index:40;inset:calc(var(--header-h) + env(safe-area-inset-top)) 0 var(--bottom-h) var(--sidebar);padding:clamp(22px,3vw,44px);background:#0d100efb;overflow:auto;overscroll-behavior:contain;transition:left .24s ease}aside.closed~.admin{left:0}.admin>h2,.admin>.eyebrow,.admin-grid{max-width:1480px;margin-left:auto;margin-right:auto}.admin h2{font:850 clamp(34px,4vw,58px)/.95 Inter,sans-serif;margin:8px auto 28px;letter-spacing:-.06em}.admin-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.admin article{grid-column:span 4;position:relative;padding:clamp(19px,2vw,27px);background:linear-gradient(145deg,#181c19,#131614);border:1px solid #ffffff14;border-radius:16px;box-shadow:0 18px 50px #0005}.admin article:before{content:counter(article,decimal-leading-zero);counter-increment:article;position:absolute;right:18px;top:16px;color:#4d554f;font-size:26px;font-weight:900}.admin-grid{counter-reset:article}.admin article:nth-child(2){grid-column:span 8}.admin textarea{min-height:100px;margin:10px 0;resize:vertical}.admin article:nth-child(2) textarea{min-height:260px;font-family:Inter,sans-serif}.row{display:flex;gap:8px;flex-wrap:wrap}.admin pre{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}
#toast{position:fixed;z-index:80;left:50%;bottom:max(24px,calc(var(--bottom-h) + env(safe-area-inset-bottom) + 12px));max-width:min(90vw,520px);transform:translate(-50%,20px);opacity:0;padding:11px 16px;text-align:center;background:var(--paper);color:var(--ink);border-radius:2px;box-shadow:7px 7px 0 var(--accent);transition:.2s;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%,0)}.bottom-nav{display:none}
.undo-action{position:fixed;z-index:81;left:50%;bottom:max(76px,calc(var(--bottom-h) + env(safe-area-inset-bottom) + 58px));transform:translateX(-50%);min-height:36px;padding:7px 12px;background:#d9c972;border-color:#d9c972;box-shadow:0 10px 30px #0009;font-size:11px}

@media (min-width:1025px) and (max-width:1366px){:root{--sidebar:282px;--gutter:14px}.brand small{max-width:210px}.top-actions{gap:7px}.admin{padding:24px}.admin article{grid-column:span 6}.admin article:nth-child(2){grid-column:span 6}.category{min-height:34px;padding-block:5px}}
@media (max-width:1024px){:root{--header-h:58px;--sidebar:min(390px,82vw);--bottom-h:0px;--gutter:14px}header{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.brand small{max-width:180px}.top-actions{gap:7px}#sync-state{display:none}.top-actions select{width:clamp(140px,25vw,220px)}aside{transform:translateX(-100%);box-shadow:18px 0 48px #000b}aside.open{transform:none}aside.open+.sidebar-scrim{display:block}#map-wrap,aside.closed~#map-wrap{left:0}.admin,aside.closed~.admin{left:0}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin article,.admin article:nth-child(2){grid-column:auto}.admin article:nth-child(2){grid-row:span 2}.category{min-height:42px}.zoom button{width:46px;height:46px;min-height:46px}.empty{text-align:center}.empty p{margin-inline:auto}}
@media (max-width:640px){:root{--header-h:56px;--sidebar:min(360px,90vw);--bottom-h:calc(62px + env(safe-area-inset-bottom));--gutter:10px}header{gap:5px}.brand{gap:6px}.brand>span{width:29px;height:29px;font-size:18px}.brand b{font-size:12px}.brand small,#logout{display:none}.top-actions select{width:min(39vw,150px);min-height:40px;padding:7px 26px 7px 8px;font-size:11px}.icon-btn{width:42px;height:42px}.sidebar-head h2{font-size:26px}aside{padding:18px 16px max(22px,env(safe-area-inset-bottom));bottom:var(--bottom-h)}.sidebar-scrim{bottom:var(--bottom-h)}.bottom-nav{display:flex;position:fixed;z-index:30;left:0;right:0;bottom:0;height:var(--bottom-h);padding:0 max(env(safe-area-inset-right),6px) env(safe-area-inset-bottom) max(env(safe-area-inset-left),6px);background:#111412f6;border-top:1px solid var(--line);backdrop-filter:blur(14px)}.bottom-nav button{flex:1;min-width:0;min-height:56px;background:transparent;color:var(--paper);display:grid;place-content:center;gap:1px;font-size:19px;border:0}.bottom-nav button:nth-child(2){color:var(--accent)}.bottom-nav small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.stats{padding:8px 10px;gap:12px;box-shadow:5px 5px 0 #0008}.stats b{font-size:16px}.stats small{font-size:7px}.progress-ring{width:42px;height:42px}.marker-card{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));width:auto;max-height:min(60%,500px);padding:19px;box-shadow:7px 7px 0 #000b}.marker-card h3{padding-right:28px}.card-actions button{min-height:46px}.empty h3{font-size:clamp(25px,8vw,36px)}.empty p{max-width:320px}.readonly{top:8px;max-width:calc(100% - 90px);font-size:10px}.admin{inset:calc(var(--header-h) + env(safe-area-inset-top)) 0 var(--bottom-h);padding:18px max(14px,env(safe-area-inset-right)) 24px max(14px,env(safe-area-inset-left))}.admin-grid{grid-template-columns:1fr}.admin article,.admin article:nth-child(2){grid-column:1;grid-row:auto}.admin article:nth-child(2) textarea{min-height:210px}.row>*{flex:1}.zoom{top:10px;right:max(10px,env(safe-area-inset-right))}.zoom button{width:44px;height:44px;min-height:44px}}
@media (max-width:374px){:root{--sidebar:94vw}.brand>span{display:none}.top-actions select{width:43vw}.stats{gap:8px}.stats div:nth-child(2){display:none}.empty{padding:18px}.empty h3{font-size:24px}.empty p{font-size:12px}.auth-card{padding:22px}.seal{width:46px;height:46px;font-size:25px}.quick{gap:4px}.quick button{padding-inline:7px}}
@media (max-width:1024px) and (max-height:540px) and (orientation:landscape){:root{--header-h:50px;--bottom-h:0px;--sidebar:min(350px,48vw);--gutter:8px}.brand small,#sync-state,#logout{display:none}.bottom-nav{display:none}aside,.sidebar-scrim{bottom:0}aside{padding-top:12px}.sidebar-head{display:none}.category{min-height:34px;padding-block:4px}.coverage{margin-top:10px}.marker-card{left:auto;right:8px;bottom:8px;width:min(380px,48vw);max-height:calc(100% - 16px)}.card-actions{display:flex}.card-actions button:first-child{grid-column:auto}.stats{left:8px;bottom:8px}.zoom{right:8px;top:8px}.zoom button{width:40px;height:40px;min-height:40px}.admin{inset:calc(var(--header-h) + env(safe-area-inset-top)) 0 0;padding:14px}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin article,.admin article:nth-child(2){grid-column:auto}.admin article:nth-child(2) textarea{min-height:140px}}
@media (min-width:1680px){:root{--sidebar:300px;--gutter:24px}html,body{font-size:15px}.category{min-height:40px}.marker-card{width:440px;padding:26px}.top-actions select{width:240px}.brand small{max-width:440px}}
@media (max-width:1024px){header{inset:0 0 auto;height:calc(var(--header-h) + env(safe-area-inset-top));justify-content:flex-start;padding-top:env(safe-area-inset-top);background:#0d100eea;border-bottom:1px solid #ffffff12;box-shadow:0 8px 28px #0004;backdrop-filter:blur(20px);pointer-events:auto}header:after{display:block;content:"";position:absolute;bottom:-1px;left:0;width:110px;height:3px;background:var(--accent)}.brand{display:flex}.top-actions{margin-left:auto;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}.icon-btn{position:static;box-shadow:none;border:0;background:transparent}.side-brand,.sidebar-collapse{display:none}.sidebar-head{display:block}aside{top:calc(var(--header-h) + env(safe-area-inset-top))}#map-wrap{inset:calc(var(--header-h) + env(safe-area-inset-top)) 0 var(--bottom-h) 0}.sidebar-scrim{inset:calc(var(--header-h) + env(safe-area-inset-top)) 0 var(--bottom-h)}}
@media (hover:none),(pointer:coarse){button{min-height:44px}.quick button{min-height:38px}.category{min-height:44px}.marker-card .close,.admin>.close{width:44px;min-height:44px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

.presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:-8px 0 12px}.presets button{min-height:34px;padding:6px 8px;border-color:#ffffff12;background:#ffffff05;color:#bfc5c0;font-size:10px}.presets .hunt-start{grid-column:1/-1;background:#d9c972;color:#171914;border-color:#d9c972}.note-field{margin:16px 0 4px;text-transform:none;letter-spacing:0}.note-field textarea{min-height:72px;resize:vertical}.card-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.card-secondary-actions button{min-width:0;padding-inline:8px;font-size:11px}.hunt-bar{position:absolute;z-index:12;left:50%;bottom:max(18px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:7px;transform:translateX(-50%);min-width:min(620px,calc(100% - 32px));padding:9px;background:#111512ef;border:1px solid #d9c97266;border-radius:14px;box-shadow:0 18px 50px #000a;backdrop-filter:blur(18px)}.hunt-bar>div{display:grid;min-width:145px;flex:1;padding-left:5px}.hunt-bar b{font-size:11px}.hunt-bar small{color:var(--muted);font-size:9px}.hunt-bar button{min-height:38px;padding:7px 12px}.hunt-bar #hunt-prev,.hunt-bar #hunt-next,.hunt-bar #hunt-close{width:40px;padding:6px;background:transparent;color:var(--paper);border-color:#ffffff1c}.hunt-bar #hunt-found{background:#d9c972;border-color:#d9c972}.hunt-active .stats{display:none}.readonly{display:flex;align-items:center;gap:8px;white-space:nowrap}.readonly select{min-height:34px;padding:5px 28px 5px 8px;font-size:10px}.readonly b{color:#ffe2b8}.compare-both{color:#aee7bd}.compare-mine{color:#ffb36f}.compare-friend{color:#8fc5ff}.favorite-active{color:#d9c972!important;border-color:#d9c972!important}
@media (max-width:640px){.presets{grid-template-columns:repeat(2,minmax(0,1fr))}.hunt-bar{left:8px;right:8px;bottom:calc(var(--bottom-h) + 8px);width:auto;min-width:0;transform:none}.hunt-bar>div{min-width:0}.hunt-bar b{font-size:10px}.hunt-bar #hunt-found{font-size:0;width:44px}.hunt-bar #hunt-found:after{content:'✓';font-size:18px}.readonly{left:8px;right:8px;max-width:none;transform:none;overflow-x:auto;justify-content:flex-start}.marker-card{padding-bottom:22px}.card-secondary-actions{grid-template-columns:1fr}}
.readonly{top:72px}
@media (max-width:640px){.readonly{top:8px}}
@media (min-width:1025px){.zoom{top:88px}}
.marker-symbol svg{width:15px;height:15px;overflow:visible;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}

/* Unified tactile and selected states */
button{position:relative;will-change:transform,filter;transform:translateZ(0);-webkit-tap-highlight-color:transparent}
button:not(:disabled):active,button.is-pressing{transform:translateY(2px) scale(.975);filter:brightness(.92);box-shadow:0 1px 0 #0008,inset 0 2px 6px #0007!important;transition-duration:.055s}
button.press-pulse{animation:button-pulse .26s ease-out}
@keyframes button-pulse{0%{box-shadow:0 0 0 0 #d9c97255}70%{box-shadow:0 0 0 5px #d9c97200}100%{box-shadow:0 0 0 0 #d9c97200}}
button:disabled{cursor:not-allowed;opacity:.48;filter:saturate(.35)}
.quick button.active,.presets button.active,.card-actions button.active,.sidebar-tabs button.active{border-color:#d9c972!important;background:linear-gradient(180deg,#3b3827,#27281f)!important;color:#f5e99d!important;box-shadow:inset 0 0 0 1px #d9c97232,0 5px 16px #0006!important;text-shadow:0 1px 0 #000}
.quick button.active:before,.presets button.active:before,.card-actions button.active:before,.sidebar-tabs button.active:before{content:"";position:absolute;left:7px;right:7px;bottom:3px;height:2px;border-radius:99px;background:#d9c972;box-shadow:0 0 8px #d9c97288}
.category:has(input:checked){border-color:#d9c97252;background:linear-gradient(90deg,#d9c97213,#ffffff05);color:#f1eee5;box-shadow:inset 3px 0 0 #d9c972}
.category:has(input:checked) .marker-symbol{box-shadow:0 0 0 1px #d9c97288,0 0 12px #d9c97222}
.category:has(input:focus-visible),.hide-completed:has(input:focus-visible){outline:2px solid var(--accent-2);outline-offset:2px}
.hide-completed:has(input:checked){border-color:#d9c97255;background:#d9c97210;color:#f3edcf;box-shadow:inset 3px 0 0 #d9c972}
.favorite-active,[aria-pressed="true"].ghost{background:#d9c97212!important;box-shadow:inset 0 0 0 1px #d9c97242!important}
.zoom button:active{background:#d9c972!important;color:#171914!important}
.bottom-nav button:active{background:#d9c97216!important;color:#f5e99d!important}
.filter-empty{position:absolute;z-index:11;left:50%;top:50%;display:grid;justify-items:center;gap:7px;width:min(340px,calc(100% - 32px));padding:18px;transform:translate(-50%,-50%);border:1px solid #d9c97266;border-radius:14px;background:#111512ed;box-shadow:0 18px 55px #000a;text-align:center;backdrop-filter:blur(16px)}.filter-empty[hidden]{display:none}.filter-empty b{font-size:13px;color:#f4f1e8}.filter-empty span{color:var(--muted);font-size:11px;line-height:1.4}.filter-empty button{min-height:38px;margin-top:3px}
@media (max-width:480px){:root{--header-h:54px;--sidebar:calc(100vw - 18px);--gutter:8px}.brand{min-width:0}.brand>span{width:30px;height:30px}.brand>div{display:none}.top-actions select{width:min(52vw,190px);min-height:38px}.icon-btn{width:38px;height:38px}aside{border-radius:0 16px 16px 0;padding:14px 13px max(18px,env(safe-area-inset-bottom));overflow-x:hidden}.sidebar-head{margin-bottom:13px}.sidebar-head h2{font-size:24px}.sidebar-tabs{margin-top:12px}.quick{margin-bottom:13px}.category{min-height:47px}.zoom{top:8px;right:8px}.zoom button{width:42px;height:42px;min-height:42px}.stats{left:8px;bottom:8px;max-width:calc(100% - 72px)}.marker-card{max-height:68%;border-radius:14px}.filter-empty{top:46%;padding:16px}.bottom-nav{height:var(--bottom-h)}.bottom-nav button{min-height:54px}}

/* Card-aware hunt layout */
#map-wrap{container-type:inline-size}
@container (min-width:801px){#marker-card:not([hidden])~.hunt-bar{left:max(var(--gutter),env(safe-area-inset-left));right:calc(430px + var(--gutter) + var(--gutter) + var(--gutter));width:auto;min-width:0;transform:none}.hunt-bar>div{min-width:120px}}
@container (max-width:800px){#marker-card:not([hidden]){bottom:84px;max-height:calc(100% - 100px)}#marker-card:not([hidden])~.hunt-bar{left:8px;right:8px;bottom:8px;width:auto;min-width:0;transform:none}}
@media (max-width:640px){.hunt-bar{bottom:8px}#marker-card:not([hidden]){bottom:76px;max-height:calc(100% - 88px)}}

/* Optically centered close icons */
.marker-card .close,.admin>.close,#hunt-close{display:grid;place-items:center;padding:0;font-size:0;line-height:1}
.marker-card .close:before,.marker-card .close:after,.admin>.close:before,.admin>.close:after,#hunt-close:before,#hunt-close:after{content:"";position:absolute;left:50%;top:50%;width:15px;height:2.5px;border-radius:99px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg);transform-origin:center}
.marker-card .close:after,.admin>.close:after,#hunt-close:after{transform:translate(-50%,-50%) rotate(-45deg)}

@media (hover:hover) and (pointer:fine){button:not(:disabled):hover{transform:translateY(-1px);filter:brightness(1.1);box-shadow:0 7px 18px #0005}.marker-card button:hover,.hunt-bar button:hover{border-color:#d9c97288;color:#f5e99d;background:#d9c9720e}.marker-card .close:hover,.admin>.close:hover,#hunt-close:hover{color:#ff7652;border-color:#ff6438;background:#ff643812;box-shadow:0 0 0 3px #ff643815}.zoom button:hover{background:#d9c972;color:#171914;filter:none;box-shadow:inset 0 0 0 1px #fff4}.category-tools button:hover,.group-head:hover{transform:none;box-shadow:none}.location-item:hover{border-color:#d9c97255;background:linear-gradient(135deg,#292a20,#181c18);color:#f5e99d}}
.zoom button:disabled{opacity:.3;background:#111412;color:#6f7771;box-shadow:inset 0 0 0 1px #ffffff08}

/* Semantic marker states */
.card-actions button[data-set]{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;background:#151916;color:#e6e7e2;border-color:#ffffff18;text-shadow:none}
.card-actions .status-icon{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border:1px solid #ffffff22;border-radius:50%;background:#ffffff08;color:#c7ccc8;font-size:14px;font-weight:900;line-height:1;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.card-actions button.active:before{display:none}
.card-actions button[data-set="found"].active{border-color:#5dba89!important;background:linear-gradient(145deg,#347d59,#245a41)!important;color:#f3fff8!important;box-shadow:inset 0 0 0 1px #b8f4d52e,0 6px 18px #102a1e88!important}
.card-actions button[data-set="found"].active .status-icon{border-color:#d9ffeb;background:#d9ffeb;color:#255f43;box-shadow:0 0 0 3px #d9ffeb20}
.card-actions button[data-set="deferred"].active{border-color:#ce9750!important;background:linear-gradient(145deg,#74512d,#4b351f)!important;color:#fff1d8!important;box-shadow:inset 0 0 0 1px #ffd79a25,0 6px 18px #2b1a0d99!important}
.card-actions button[data-set="deferred"].active .status-icon{border-color:#ffe0a8;background:#ffe0a8;color:#5a3d1e;box-shadow:0 0 0 3px #ffe0a81b}
.card-actions button[data-set="verify"].active{border-color:#f0d76b!important;background:linear-gradient(145deg,#4a4325,#29281d)!important;color:#fff3a7!important;box-shadow:inset 0 0 0 1px #fff4a838,0 0 0 3px #f0d76b17,0 8px 22px #1d180899!important;animation:verify-glow 2.4s ease-in-out infinite}
.card-actions button[data-set="verify"].active .status-icon{border-color:#fff3a7;background:#f0d76b;color:#171914;box-shadow:0 0 0 4px #f0d76b20,0 0 14px #f0d76b66;transform:scale(1.08)}
.card-actions button[data-set="none"].active{border-color:#89918b!important;background:linear-gradient(145deg,#353a36,#252a26)!important;color:#f1f3f1!important;box-shadow:inset 0 0 0 1px #ffffff14,0 6px 18px #0006!important}
.card-actions button[data-set="none"].active .status-icon{border-color:#d7ddd8;background:#d7ddd8;color:#333a35}
@keyframes verify-glow{0%,100%{filter:brightness(1);box-shadow:inset 0 0 0 1px #fff4a838,0 0 0 3px #f0d76b12,0 8px 22px #1d180899!important}50%{filter:brightness(1.08);box-shadow:inset 0 0 0 1px #fff4a850,0 0 0 5px #f0d76b1b,0 9px 26px #1d1808aa!important}}
@media (hover:hover) and (pointer:fine){.card-actions button[data-set="found"]:not(.active):hover{border-color:#5dba8966;background:#5dba8910;color:#9ce0ba}.card-actions button[data-set="deferred"]:not(.active):hover{border-color:#ce975066;background:#ce975010;color:#e8bd83}.card-actions button[data-set="verify"]:not(.active):hover{border-color:#f0d76b88;background:#f0d76b12;color:#fff3a7;box-shadow:0 7px 20px #0005,0 0 0 3px #f0d76b0c}.card-actions button[data-set="verify"]:not(.active):hover .status-icon{border-color:#f0d76b;background:#f0d76b;color:#171914;transform:scale(1.08)}.card-actions button[data-set="none"]:not(.active):hover{border-color:#89918b77;background:#ffffff08;color:#f1f3f1}}

/* Project-styled select menus */
.custom-select{position:relative;width:100%;min-width:0}.custom-select-native{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;overflow:hidden!important;white-space:nowrap!important;pointer-events:none!important}.custom-select-trigger{display:flex;align-items:center;width:100%;min-height:43px;padding:9px 47px 9px 13px;text-align:left;border:1px solid #ffffff1c;border-radius:11px;background:linear-gradient(145deg,#181d19,#141815);color:var(--paper);box-shadow:inset 0 1px 0 #ffffff08,0 5px 14px #0002;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .12s ease}.custom-select-value{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-chevron{position:absolute;right:8px;top:50%;width:29px;height:29px;transform:translateY(-50%);border:1px solid #ffffff13;border-radius:8px;background:#ffffff05;transition:transform .2s ease,border-color .2s ease,background .2s ease}.custom-select-chevron:before{content:"";position:absolute;left:50%;top:47%;width:7px;height:7px;border-right:1.8px solid #d9ddd9;border-bottom:1.8px solid #d9ddd9;transform:translate(-50%,-65%) rotate(45deg);transition:transform .2s ease,color .2s ease}.custom-select.open .custom-select-trigger{border-color:#d9c97288;background:linear-gradient(145deg,#1d211c,#171b17);box-shadow:inset 0 0 0 1px #d9c97222,0 0 0 3px #d9c9720b,0 8px 22px #0005}.custom-select.open .custom-select-chevron{border-color:#d9c97266;background:#d9c97212;transform:translateY(-50%) rotate(180deg)}.custom-select.open .custom-select-chevron:before{border-color:#f3e895}.custom-select-trigger:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.custom-select-menu{position:fixed;z-index:220;display:grid;gap:3px;padding:6px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #ffffff24;border-radius:13px;background:linear-gradient(155deg,#202521f5,#151916fa);box-shadow:0 22px 55px #000c,inset 0 1px 0 #ffffff0d;backdrop-filter:blur(22px) saturate(1.1);animation:select-menu-in .16s cubic-bezier(.2,.8,.2,1);scrollbar-width:thin;scrollbar-color:#d9c97255 transparent}.custom-select-menu[hidden]{display:none}.custom-select-menu[data-side="above"]{transform-origin:bottom}.custom-select-menu[data-side="below"]{transform-origin:top}.custom-select-option{display:flex;align-items:center;width:100%;min-height:40px;padding:9px 38px 9px 12px;text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:#d8ddd9;box-shadow:none;font-weight:650;line-height:1.25;transform:none!important;filter:none!important}.custom-select-option:before{content:"";position:absolute;right:13px;top:50%;width:8px;height:4px;border-left:2px solid transparent;border-bottom:2px solid transparent;transform:translateY(-65%) rotate(-45deg)}.custom-select-option[aria-selected="true"]{border-color:#d9c9723b;background:linear-gradient(90deg,#d9c97222,#d9c9720b);color:#fff4b0;box-shadow:inset 3px 0 0 #d9c972}.custom-select-option[aria-selected="true"]:before{border-color:#f3e895}.custom-select-option:focus-visible{outline:2px solid #d9c972;outline-offset:-2px}.custom-select-option:disabled{opacity:.42}.top-actions .custom-select{width:clamp(150px,17vw,220px)}.readonly .custom-select{width:auto;min-width:130px}.readonly .custom-select-trigger{min-height:34px;padding-block:5px;font-size:10px}.readonly .custom-select-chevron{width:24px;height:24px;right:5px}.readonly .custom-select-menu{font-size:10px}@keyframes select-menu-in{from{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:none}}
@media (hover:hover) and (pointer:fine){.custom-select-trigger:hover{border-color:#d9c97255;background:linear-gradient(145deg,#20251f,#181c18);box-shadow:inset 0 1px 0 #ffffff0c,0 8px 20px #0004}.custom-select-trigger:hover .custom-select-chevron{border-color:#d9c97255;background:#d9c9720d}.custom-select-option:hover{border-color:#ffffff14;background:#ffffff0a;color:#fff}.custom-select-option[aria-selected="true"]:hover{border-color:#d9c97266;background:linear-gradient(90deg,#d9c9722e,#d9c97210);color:#fff7c9}}
@media (max-width:1024px){.top-actions .custom-select{width:clamp(140px,25vw,220px)}}
@media (max-width:640px){.top-actions .custom-select{width:min(39vw,150px)}.top-actions .custom-select-trigger{min-height:40px;padding:7px 39px 7px 10px;font-size:11px}.top-actions .custom-select-chevron{right:6px;width:27px;height:27px}.custom-select-menu{padding:5px;border-radius:12px}.custom-select-option{min-height:44px;padding-block:11px}}
@media (max-width:480px){.top-actions .custom-select{width:min(52vw,190px)}}
.custom-select-option>span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.custom-select-option{padding-right:12px}.custom-select-option[aria-selected="true"]{padding-right:36px}
@media (max-width:430px){.custom-select-option{height:auto;min-height:44px;line-height:1.28}.custom-select-option>span{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}}
.custom-select-option{height:auto;line-height:1.28}.custom-select-option>span{display:-webkit-box;overflow:hidden;white-space:normal;overflow-wrap:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}
