:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#eef1ea;--paper-deep:#e2e7dd;--panel:#fff;--panel-soft:#f6f8f2;--panel-raised:#fff;--ink:#14201a;--ink-soft:#39473d;--muted:#66705f;--ink-muted:#66705f;--text-muted:#66705f;--faint:#8a948a;--line:#dde4d6;--line-soft:#e9eee2;--line-strong:#c6d0bb;--forest:#157a45;--forest-deep:#0b4a29;--forest-bright:#2aa15d;--spruce:#157a45;--spruce-deep:#0b4a29;--spruce-bright:#2aa15d;--moss:#4f8a4a;--fern:#7aa64f;--lichen:#cde0a4;--lichen-pale:#e8f0d6;--amber:#e89227;--amber-deep:#ab6512;--amber-glow:#e8922757;--lake:#2b7fb0;--sky:#2b7fb0;--rowan:#c5384b;--rowan-bright:#d8485b;--rowan-soft:#c5384b1a;--shadow-sm:0 1px 2px #122a1c12;--shadow-md:4px 4px 0 -1px color-mix(in srgb, var(--ink) 9%, transparent), 0 3px 10px -4px #102c1c1f;--shadow-lg:8px 8px 0 -2px color-mix(in srgb, var(--ink) 9%, transparent), 0 26px 50px -28px #0b2a1a57;--edge:2.5px 2.5px 0 -1px color-mix(in srgb, var(--ink) 13%, transparent);--ring:0 0 0 3px #2aa15d52;--radius-sm:8px;--radius:12px;--radius-lg:16px;--bottom-nav-height:4.75rem}*{box-sizing:border-box}html{background-color:var(--paper);-webkit-text-size-adjust:100%;min-block-size:100%}body{min-block-size:100dvh;color:var(--ink);font-family:var(--font-body), "Segoe UI", system-ui, sans-serif;letter-spacing:-.006em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-color:var(--paper);background-image:radial-gradient(54rem 38rem at 94% -12%,#2aa15d1a,#0000 60%),radial-gradient(46rem 34rem at -8% 2%,#2b7fb012,#0000 58%),radial-gradient(64rem 50rem at 50% 118%,#e892270f,#0000 60%);background-attachment:fixed;margin:0;font-size:1rem;line-height:1.55}.page-grain{z-index:0;pointer-events:none;opacity:.85;mix-blend-mode:multiply;background-image:linear-gradient(#0b4a290b 1px,#0000 1px),linear-gradient(90deg,#0b4a290b 1px,#0000 1px),linear-gradient(#0b4a2912 1.2px,#0000 1.2px),linear-gradient(90deg,#0b4a2912 1.2px,#0000 1.2px),repeating-radial-gradient(circle at 84% 6%,#0000 0 95px,#ab65120d 95px 96px,#0000 96px 190px);background-size:26px 26px,26px 26px,130px 130px,130px 130px,auto;position:fixed;inset:0}a{color:inherit;-webkit-text-decoration-color:color-mix(in srgb, var(--amber) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--amber) 60%, transparent);text-underline-offset:.2em;transition:color .14s,text-decoration-color .14s}a:hover{-webkit-text-decoration-color:var(--amber);text-decoration-color:var(--amber)}h1,h2,h3,h4,p{margin-block-start:0}h1,h2,h3,h4{font-family:var(--font-display), "Segoe UI", system-ui, sans-serif;color:var(--spruce-deep);letter-spacing:-.03em;font-optical-sizing:auto;text-wrap:balance;font-weight:640;line-height:1.02}h1{margin-block-end:.6rem;font-size:clamp(2.3rem,1.45rem + 3.3vw,3.5rem)}h2{margin-block-end:.5rem;font-size:clamp(1.55rem,1.2rem + 1.35vw,2.1rem)}h3{font-size:1.1rem;font-weight:600}p{color:var(--ink-soft);margin-block-end:.85rem}strong{color:var(--ink)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,input,select,textarea{font:inherit}input,select,textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:linear-gradient(180deg, #fff, var(--panel-soft));min-block-size:48px;inline-size:100%;color:var(--ink);padding:.7rem .85rem;transition:border-color .15s,box-shadow .15s,background .15s;box-shadow:inset 0 1px 2px #14231a0a}input::placeholder,textarea::placeholder{color:color-mix(in srgb, var(--muted) 80%, transparent)}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb, var(--spruce) 40%, var(--line-strong))}input:focus,select:focus,textarea:focus{border-color:var(--spruce);box-shadow:var(--ring), inset 0 1px 2px #14231a0a;background:#fff;outline:none}select{appearance:none;background-image:linear-gradient(180deg, #fff, var(--panel-soft)), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%231f5638' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");cursor:pointer;background-position:50%,right .85rem center;background-repeat:no-repeat,no-repeat;padding-inline-end:2.4rem}textarea{resize:vertical;min-block-size:120px;line-height:1.5}input[type=file]{cursor:pointer;padding:.55rem .6rem}input[type=file]::file-selector-button{background:var(--lichen-pale);color:var(--spruce-deep);cursor:pointer;border:0;border-radius:7px;margin-inline-end:.7rem;padding:.5rem .8rem;font-weight:700}label{color:var(--ink-soft);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.08em;text-transform:uppercase;gap:.4rem;font-size:.72rem;font-weight:600;display:grid}button,.button{border:1.5px solid color-mix(in srgb, var(--forest-deep) 60%, var(--forest));border-radius:var(--radius-sm);background:var(--forest);color:#f3fbf4;min-block-size:48px;font-family:var(--font-body);letter-spacing:.005em;cursor:pointer;box-shadow:var(--edge);justify-content:center;align-items:center;gap:.5rem;padding:.72rem 1.15rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:transform .15s cubic-bezier(.2,.8,.2,1),box-shadow .15s,filter .15s;display:inline-flex;position:relative}button:hover,.button:hover{filter:brightness(1.04);box-shadow:4px 4px 0 -1px color-mix(in srgb, var(--ink) 16%, transparent);transform:translate(-1px,-1px)}button:active,.button:active{filter:brightness(.98);box-shadow:1px 1px 0 -1px color-mix(in srgb, var(--ink) 16%, transparent);transform:translate(1px,1px)}button.secondary,.button.secondary{background:var(--panel);color:var(--spruce-deep);border-color:var(--line-strong);box-shadow:var(--edge)}button.secondary:hover,.button.secondary:hover{border-color:var(--forest);background:var(--panel-soft)}button.danger,.button.danger{background:linear-gradient(180deg, var(--rowan-bright), var(--rowan));color:#fdf3f1}button:disabled,.button:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.55;box-shadow:var(--shadow-sm);transform:none}button:focus-visible,.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.app-shell{z-index:1;grid-template-rows:auto 1fr auto;min-block-size:100dvh;display:grid;position:relative}.topbar{z-index:20;background:color-mix(in srgb, var(--paper) 86%, transparent);border-block-end:1px solid var(--line);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem clamp(1rem,4vw,2rem);display:none;position:sticky;inset-block-start:0}.brand{color:var(--spruce-deep);align-items:center;gap:.55rem;text-decoration:none;display:inline-flex}.brand-mark{color:#fbf8f1;background:linear-gradient(155deg, var(--spruce-bright), var(--spruce-deep));block-size:2.2rem;inline-size:2.2rem;box-shadow:inset 0 1px 0 #ffffff40, var(--shadow-sm);border-radius:9px;place-items:center;display:grid}.brand-word{font-family:var(--font-display);letter-spacing:0;font-size:1.22rem;font-weight:600}.topbar-nav{align-items:center;gap:.2rem;display:flex}.topbar-nav a{color:var(--ink-soft);border-radius:10px;padding:.5rem .85rem;font-size:1.15rem;font-weight:600;line-height:1;text-decoration:none;transition:background .15s,color .15s}.topbar-nav a:hover,.topbar-nav a:focus-visible{background:var(--lichen-pale);color:var(--spruce-deep)}.bottom-nav{z-index:20;box-sizing:border-box;block-size:var(--bottom-nav-height);padding:.36rem .32rem calc(.36rem + env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--paper) 85%, transparent);border-block-start:1px solid var(--line);-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.12rem;display:grid;position:fixed;inset-block-end:0;inset-inline:0;overflow:hidden}.bottom-nav a{block-size:100%;min-inline-size:0;color:var(--muted);letter-spacing:0;border-radius:11px;grid-template-rows:1.25rem 1.55rem;align-content:center;justify-items:center;gap:.14rem;line-height:1;text-decoration:none;transition:color .15s,background .15s,transform .15s;display:grid}.bottom-nav-label{block-size:1.55rem;max-inline-size:100%;color:inherit;letter-spacing:0;text-align:center;text-wrap:balance;white-space:normal;justify-content:center;align-items:center;font-size:.66rem;font-weight:760;line-height:.92;display:flex;overflow:hidden}.bottom-nav a:hover,.bottom-nav a:focus-visible{color:var(--spruce-deep);background:var(--lichen-pale);transform:translateY(-1px)}.page{inline-size:min(100%,1000px);padding:clamp(1.4rem, 4vw, 3.25rem) clamp(1rem, 4vw, 1.5rem) calc(var(--bottom-nav-height) + 1.25rem);margin-inline:auto;position:relative}.map-page,.trail-page{inline-size:min(100%,1140px)}@media (prefers-reduced-motion:no-preference){.page>*{animation:.6s cubic-bezier(.16,1,.3,1) both rise}.page>:first-child{animation-delay:40ms}.page>:nth-child(2){animation-delay:.12s}.page>:nth-child(3){animation-delay:.2s}.page>:nth-child(4){animation-delay:.28s}.page>:nth-child(5){animation-delay:.36s}.page>:nth-child(n+6){animation-delay:.44s}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.stack{align-content:start;gap:1.1rem;display:grid}.cluster{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.panel{background:var(--panel);border:1.5px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:1.3rem;position:relative}.panel:before{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 1px #ffffffb3}.meta{color:var(--muted);font-size:.9rem;line-height:1.45}.eyebrow{color:var(--forest);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:linear-gradient(90deg, var(--forest), var(--amber));border-radius:2px;block-size:2px;inline-size:1.5rem}.surface-grid{gap:1.1rem;display:grid}.feature-card{align-content:start;gap:.45rem;display:grid}.feature-index{background:var(--lichen-pale);block-size:2.1rem;inline-size:2.1rem;color:var(--rowan);font-family:var(--font-mono);border-radius:999px;place-items:center;font-weight:700;display:grid}.action-panel{gap:1rem;display:grid}.empty-state{min-block-size:0}.success-panel{background:linear-gradient(165deg, #cdd9a68c, var(--panel));border-color:#1f56384d}.success-panel strong{color:var(--spruce-deep)}.form-alert{border-radius:var(--radius-sm);background:var(--rowan-soft);color:#7d2438;border:1px solid #a3304947;padding:.75rem .9rem;font-weight:600}.home-page{inline-size:100%;block-size:calc(100dvh - 4.9rem - env(safe-area-inset-bottom,0px));align-content:stretch;gap:0;min-block-size:32rem;padding:0}.home-hero{block-size:100%;min-block-size:inherit;gap:0;display:grid;position:relative}.home-map-preview{block-size:100%;min-block-size:inherit;box-shadow:none;isolation:isolate;background:#d8e5d7;border:0;border-radius:0;margin:0;position:relative;overflow:hidden}.home-map-preview .map-shell{block-size:100%;min-block-size:inherit;box-shadow:none;border:0;border-radius:0}.home-map-preview .map-canvas{block-size:100%;min-block-size:inherit}.home-map-preview figcaption{z-index:2;color:#ffffffeb;letter-spacing:.01em;text-shadow:0 1px 10px #12251ab3;font-size:.74rem;font-weight:600;position:absolute;inset-block-start:.85rem;inset-inline:auto .9rem}.map-trail-section h2,.map-observation-section h2{margin-block:0 .3rem}.map-trail-grid,.map-observation-grid{gap:.9rem;display:grid}.map-trail-grid{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr))}.map-observation-grid{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}.map-trail-card,.map-observation-card,.map-empty-state{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg, var(--panel), var(--panel-soft));min-inline-size:0;color:var(--spruce-deep);box-shadow:var(--shadow-sm);text-decoration:none}.map-trail-card{grid-template-columns:3rem minmax(0,1fr) auto auto;align-items:center;gap:.85rem;padding:.85rem;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s,border-color .18s;display:grid}.map-trail-card:hover{border-color:color-mix(in srgb, var(--spruce) 35%, var(--line));box-shadow:var(--shadow-md);transform:translateY(-3px)}.map-trail-icon,.map-observation-icon{background:linear-gradient(155deg, var(--spruce-bright), var(--spruce-deep));color:#fff8eb;border-radius:11px;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff38}.map-trail-icon{block-size:3rem;inline-size:3rem}.map-trail-copy,.map-observation-card>span:last-child{gap:.22rem;min-inline-size:0;display:grid}.map-trail-copy strong,.map-observation-card strong{color:var(--spruce-deep);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;line-height:1.2;overflow:hidden}.map-trail-facts{grid-template-columns:repeat(2,minmax(4.4rem,auto));gap:.4rem;margin:0;display:grid}.map-trail-facts div{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--panel) 70%, transparent);border-radius:9px;gap:.1rem;padding:.36rem .5rem;display:grid}.map-trail-facts dt,.map-trail-facts dd{margin:0}.map-trail-facts dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.64rem;font-weight:700}.map-trail-facts dd{color:var(--spruce-deep);font-family:var(--font-mono);font-size:.86rem;font-weight:600}.map-card-arrow{color:var(--spruce);transition:transform .18s}.map-trail-card:hover .map-card-arrow{transform:translate(3px)}.map-observation-card{grid-template-columns:2.6rem minmax(0,1fr);align-items:center;gap:.7rem;padding:.78rem;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s,border-color .18s;display:grid}.map-observation-card:hover{border-color:color-mix(in srgb, var(--rowan) 32%, var(--line));box-shadow:var(--shadow-md);transform:translateY(-3px)}.map-observation-icon{background:linear-gradient(155deg, var(--rowan-bright), var(--rowan));block-size:2.6rem;inline-size:2.6rem}.map-observation-type{background:var(--rowan-soft);inline-size:fit-content;color:var(--rowan);letter-spacing:.06em;text-transform:uppercase;border:1px solid #a3304940;border-radius:999px;padding:.14rem .5rem;font-size:.66rem;font-weight:800}.map-observation-card .meta{align-items:center;gap:.25rem;font-size:.8rem;display:inline-flex}.map-empty-state{color:var(--muted);align-items:center;gap:.5rem;padding:.9rem 1rem;font-weight:600;display:inline-flex}.map-shell{border:1px solid var(--line-strong);border-radius:var(--radius-lg);min-block-size:clamp(420px,58dvh,650px);box-shadow:var(--shadow-lg);isolation:isolate;background:#dbe7d6;position:relative;overflow:hidden}.map-shell-detail{min-block-size:clamp(560px,66dvh,720px)}.map-canvas{block-size:clamp(420px,58dvh,650px);min-block-size:420px;inline-size:100%}.map-shell-detail .map-canvas{block-size:clamp(560px,66dvh,720px);min-block-size:560px}.map-shell:before{content:"";z-index:1;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff4d,inset 0 -80px 70px #0f2d1f1a}.map-loading,.map-error{z-index:1;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 92%, transparent);color:var(--spruce-deep);box-shadow:var(--shadow-md);position:absolute}.map-loading{box-shadow:none;background:linear-gradient(150deg,#e2eddeeb,#cbdecaeb);border:0;border-radius:0;place-items:center;display:grid;inset:0}.map-loading:after{content:"";border:3px solid #1f563833;border-block-start-color:var(--spruce);border-radius:999px;block-size:2.4rem;inline-size:2.4rem;animation:.9s linear infinite map-spin}@keyframes map-spin{to{rotate:360deg}}.map-error{color:#7d2438;max-inline-size:min(30rem,100% - 1.5rem);padding:.65rem .75rem;font-weight:600;inset-block-end:.75rem;inset-inline-start:.75rem}.map-route-dock{z-index:2;border:1.5px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 85%, transparent);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;padding:.4rem;display:grid;position:absolute;inset-block-end:.75rem;inset-inline:.75rem;overflow:hidden}.map-route-dock::-webkit-scrollbar{display:none}.map-route-place{background:color-mix(in srgb, var(--panel-soft) 80%, transparent);block-size:3.35rem;inline-size:100%;min-inline-size:0;color:var(--spruce-deep);text-align:start;box-shadow:none;border:1px solid #0000;border-radius:10px;grid-template-columns:2.15rem minmax(0,1fr);align-items:center;gap:.42rem;padding:.26rem .45rem .26rem .22rem;transition:background .15s,border-color .15s,transform .15s;display:grid}.map-route-place:hover,.map-route-place:focus-visible,.map-route-place[aria-pressed=true]{border-color:var(--forest);background:var(--lichen-pale);box-shadow:none;filter:none;transform:none}.map-route-place:active{transform:translateY(1px)}.map-route-place img{object-fit:contain;filter:drop-shadow(0 .35rem .35rem #18291d38);block-size:2.1rem;inline-size:2.1rem}.map-route-place>span{gap:.04rem;min-inline-size:0;display:grid}.map-route-place strong,.map-route-place span span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-route-place strong{font-size:.84rem;font-weight:700;line-height:1.18}.map-route-place span span{color:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.03em;text-transform:uppercase;font-size:.64rem;font-weight:600}.map-scene-control{z-index:2;border:1.5px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 85%, transparent);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(14px)saturate(1.3);backdrop-filter:blur(14px)saturate(1.3);gap:.25rem;padding:.3rem;display:flex;position:absolute;inset-block-start:.75rem;inset-inline-end:.75rem}.map-scene-control button{block-size:2.5rem;min-block-size:0;inline-size:2.5rem;min-inline-size:0;color:var(--spruce-deep);box-shadow:none;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.map-scene-control button:hover,.map-scene-control button:focus-visible{filter:none;background:var(--lichen-pale);box-shadow:none;transform:none}.map-scene-control button[aria-pressed=true],.map-scene-control button[aria-expanded=true]{background:var(--forest);color:#f3fbf4;box-shadow:inset 0 1px #ffffff2e}.map-scene-control svg{pointer-events:none}.map-home-controls{display:contents}.map-home-controls button{border:1.5px solid color-mix(in srgb, var(--spruce) 26%, var(--line-strong));background:color-mix(in srgb, var(--panel) 88%, transparent);min-block-size:2.85rem;min-inline-size:0;color:var(--spruce);-webkit-backdrop-filter:blur(16px)saturate(1.25);backdrop-filter:blur(16px)saturate(1.25);border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.6rem .82rem;font-size:.83rem;font-weight:850;line-height:1;display:inline-flex;box-shadow:0 .85rem 1.55rem #0f2d1f38,inset 0 1px #ffffff8c}.map-home-controls button:hover,.map-home-controls button:focus-visible{filter:none;transform:none;box-shadow:0 1rem 1.7rem #0f2d1f42,inset 0 1px #ffffff9e}.map-home-controls .map-home-start{z-index:3;color:#f3fbf4;background:linear-gradient(145deg,#1f6f4a,#134631);position:absolute;inset-block-end:calc(.85rem + env(safe-area-inset-bottom,0px));inset-inline-end:calc(.85rem + env(safe-area-inset-right,0px))}.map-home-controls .map-home-start:hover,.map-home-controls .map-home-start:focus-visible{color:#f3fbf4;background:linear-gradient(145deg,#25885a,#174f37)}.map-home-controls svg{pointer-events:none;flex:none}.map-home-camera{z-index:80;inline-size:2.85rem;padding-inline:0;position:fixed;inset-block-start:calc(50% - 4.35rem);inset-inline-end:calc(.85rem + env(safe-area-inset-right,0px))}.voice-operator.voice-operator-home{inset-block:calc(50% - 3.4rem) auto}@media (max-width:520px){.voice-operator.voice-operator-home{inset-block:calc(50% - 3.4rem) auto}}.map-info-panel{z-index:3;border:1.5px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 91%, transparent);max-block-size:min(28rem,100% - 6rem);inline-size:min(24rem,100% - 1.5rem);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px)saturate(1.25);backdrop-filter:blur(16px)saturate(1.25);padding:.85rem;position:absolute;inset-block-start:4.35rem;inset-inline-end:.75rem;overflow:auto}.trail-map-info{gap:.75rem}.trail-map-info h2{margin:0;font-size:clamp(1.32rem,1.05rem + 1vw,1.75rem)}.trail-map-info p{margin:0}.trail-map-info .trail-stat-strip{inline-size:100%}.map-feature-popup .maplibregl-popup-content{border:1.5px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 96%, transparent);color:var(--ink);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:0;overflow:hidden}.map-feature-popup{z-index:4}.map-feature-popup .maplibregl-popup-tip{filter:drop-shadow(0 4px 5px #1e2a211f)}.map-feature-popup .maplibregl-popup-close-button{block-size:1.85rem;min-block-size:0;inline-size:1.85rem;min-inline-size:0;color:var(--spruce-deep);z-index:1;box-shadow:none;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;font-size:1.15rem;font-weight:800;line-height:1;display:grid}.map-feature-popup .maplibregl-popup-close-button:hover{filter:none;background:var(--lichen-pale);transform:none}.map-popup-card{min-inline-size:min(20rem,100dvw - 3rem);padding:.85rem .9rem .9rem}.map-popup-card-place{grid-template-columns:3.15rem minmax(0,1fr);align-items:start;gap:.72rem;display:grid}.map-popup-card-observation{gap:.58rem;display:grid}.map-popup-photo-link{border-radius:calc(var(--radius) - 5px);outline-offset:3px;display:block}.map-popup-photo{aspect-ratio:16/9;border-radius:calc(var(--radius) - 5px);object-fit:cover;background:var(--lichen-pale);block-size:auto;inline-size:100%;display:block}.map-popup-card>div{gap:.34rem;min-inline-size:0;display:grid}.map-popup-icon{object-fit:contain;filter:drop-shadow(0 .42rem .42rem #18291d3d);block-size:3.15rem;inline-size:3.15rem}.map-popup-title,.map-popup-meta{display:block}.map-popup-title{color:var(--spruce-deep);font-family:var(--font-display);padding-inline-end:1.4rem;font-size:1.02rem;font-weight:600;line-height:1.16}.map-popup-meta{color:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.03em;text-transform:uppercase;font-size:.72rem;font-weight:600;line-height:1.3}.map-feature-popup p{max-inline-size:15rem;margin:0}.map-popup-description{color:var(--ink-soft);font-size:.88rem;line-height:1.4}.map-popup-field-test{border-inline-start:3px solid var(--moss);background:color-mix(in srgb, var(--lichen-pale) 82%, white);color:var(--spruce-deep);border-radius:0 7px 7px 0;padding:.48rem .58rem;font-size:.8rem;font-weight:650;line-height:1.35}.map-popup-source{border-block-start:1px solid var(--line-soft);color:var(--muted);padding-block-start:.45rem;font-size:.72rem;font-weight:600;line-height:1.25}.map-popup-badge,.map-popup-link{inline-size:fit-content}.map-popup-badge{background:var(--lichen-pale);color:var(--rowan);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.2rem .6rem;font-size:.74rem;font-weight:800}.map-popup-link{background:linear-gradient(180deg, #fff, var(--lichen-pale));border:1px solid var(--line-strong);min-block-size:2.4rem;color:var(--spruce-deep);border-radius:9px;justify-content:center;align-items:center;padding:.5rem .8rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.forest-activity-page{gap:1rem}.forest-activity-hero{gap:.9rem;display:grid}.forest-activity-hero h1{margin-block-end:.2rem}.forest-hot-card{border:1px solid var(--line-strong);border-radius:var(--radius);inline-size:fit-content;max-inline-size:100%;color:var(--spruce-deep);background:linear-gradient(180deg, #fffaf0, var(--panel));box-shadow:var(--shadow-sm);align-items:center;gap:.75rem;padding:.75rem .85rem;display:inline-flex}.forest-hot-card>span{gap:.15rem;display:grid}.forest-hot-card span span{color:var(--muted);font-size:.86rem;font-weight:650}.forest-activity-grid,.observation-feed{gap:1.1rem;display:grid}.forest-activity-card{grid-template-columns:auto minmax(0,1fr);gap:.9rem;display:grid;overflow:hidden;container-type:inline-size}.forest-activity-rank{color:#fff8eb;background:linear-gradient(145deg, var(--spruce-bright), var(--spruce-deep));block-size:3.2rem;inline-size:3.2rem;font-family:var(--font-mono), ui-monospace, monospace;border-radius:14px;place-items:center;font-weight:850;display:grid}.forest-activity-copy{min-inline-size:0}.forest-activity-copy h2{margin-block-end:.25rem;font-size:clamp(1.22rem,5vw,1.8rem)}.forest-activity-copy h2 a{color:inherit;text-decoration:none}.forest-activity-copy p:last-child{margin:0}.forest-activity-stats{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--panel-soft) 88%, white);grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.forest-activity-stats div{min-inline-size:0;padding:.65rem .7rem}.forest-activity-stats div:not(:first-child){border-inline-start:1px solid var(--line-soft)}.forest-activity-stats dt,.forest-activity-stats dd{margin:0}.forest-activity-stats dt{color:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.04em;text-transform:uppercase;font-size:.66rem;font-weight:800}.forest-activity-stats dd{color:var(--spruce-deep);font-family:var(--font-display);font-size:1.18rem;font-weight:750}.forest-challenge-strip,.forest-recent-strip,.forest-activity-actions{grid-column:1/-1}.forest-challenge-strip{scrollbar-width:none;gap:.45rem;display:flex;overflow-x:auto}.forest-challenge-strip::-webkit-scrollbar{display:none}.forest-challenge-strip a{border:1px solid var(--line-strong);min-block-size:2.15rem;color:var(--spruce-deep);background:var(--lichen-pale);border-radius:999px;flex:none;align-items:center;gap:.35rem;padding-inline:.7rem;font-size:.78rem;font-weight:750;text-decoration:none;display:inline-flex}.forest-recent-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;display:grid}.forest-recent-strip a,.forest-no-images{border:1px solid var(--line);min-block-size:5.3rem;color:var(--spruce-deep);background:linear-gradient(145deg, var(--panel), var(--lichen-pale));border-radius:12px;text-decoration:none;display:grid;position:relative;overflow:hidden}.forest-recent-strip img{object-fit:cover;block-size:100%;inline-size:100%}.forest-recent-strip a>span,.forest-no-images{place-items:center}.forest-recent-strip small{color:#fff8eb;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;background:#0f382cb8;border-radius:999px;padding:.18rem .38rem;font-size:.62rem;font-weight:800;position:absolute;inset-block-end:.35rem;inset-inline:.35rem;overflow:hidden}.forest-no-images{color:var(--muted);grid-column:1/-1;align-content:center;justify-items:center;gap:.3rem;font-weight:700}.forest-activity-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.observation-stats{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg, var(--panel), var(--panel-soft));inline-size:min(100%,38rem);box-shadow:var(--shadow-sm);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.observation-stats div{min-inline-size:0;padding:.7rem .85rem}.observation-stats div:not(:first-child){border-inline-start:1px solid var(--line-soft)}.observation-stats dt,.observation-stats dd{margin:0}.observation-stats dt{color:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:700}.observation-stats dd{color:var(--spruce-deep);font-family:var(--font-display);font-size:1.25rem;font-weight:700;line-height:1.1}.observation-card{gap:1rem;display:grid;container-type:inline-size}.observation-card-meta{gap:.24rem;display:grid}.observation-card h2 a,.campaign-card h2 a{text-decoration:none}.trail-page{inline-size:100%;block-size:calc(100dvh - 4.9rem - env(safe-area-inset-bottom,0px));align-content:stretch;gap:0;min-block-size:32rem;padding:0}.trail-map-stage{block-size:100%;min-block-size:inherit;isolation:isolate;position:relative}.trail-page>.trail-map-stage{animation:none}.trail-map-stage>.map-shell-detail,.trail-map-stage>.map-shell-detail .map-canvas{block-size:100%;min-block-size:inherit}.trail-map-stage>.map-shell-detail{box-shadow:none;border:0;border-radius:0}.trail-map-stage>.map-shell-detail:before{box-shadow:inset 0 -80px 70px #0f2d1f1a}.trail-map-action{z-index:3;border:1.5px solid color-mix(in srgb, var(--spruce) 26%, var(--line-strong));block-size:2.85rem;inline-size:2.85rem;color:var(--spruce);background:color-mix(in srgb, var(--panel) 88%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.25);backdrop-filter:blur(16px)saturate(1.25);border-radius:999px;place-items:center;display:grid;position:absolute;inset-block-end:5.45rem;inset-inline-end:.85rem;box-shadow:0 .85rem 1.55rem #0f2d1f38,inset 0 1px #ffffff8c}.trail-map-action:hover,.trail-map-action:focus-visible{color:#fff8eb;background:linear-gradient(145deg,#1f6f4a,#134631)}.trail-hero{gap:.85rem;padding-block:.35rem .1rem}.trail-hero h1{margin-block:0}.trail-hero p{max-inline-size:48rem}.trail-stat-strip{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg, var(--panel), var(--panel-soft));inline-size:min(100%,42rem);box-shadow:var(--shadow-sm);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.trail-stat-strip div{gap:.15rem;padding:.8rem .9rem;display:grid}.trail-stat-strip div:not(:first-child){border-inline-start:1px solid var(--line-soft)}.trail-stat-strip dt,.trail-stat-strip dd{margin:0}.trail-stat-strip dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.trail-stat-strip dd{color:var(--spruce-deep);font-family:var(--font-mono);font-size:1.05rem;font-weight:600}.trail-intel{gap:1rem}.trail-intel h2,.trail-intel h3,.trail-intel h4,.trail-intel p,.trail-intel ul,.trail-intel dl{margin:0}.section-eyebrow{color:var(--amber-deep);letter-spacing:0;text-transform:uppercase;margin-block:0 .2rem;font-size:.72rem;font-weight:800}.trail-intel h2{color:var(--spruce-deep);font-size:2.1rem;line-height:.98}.trail-intel-summary{max-inline-size:52rem;color:var(--ink-soft);font-size:1.03rem}.trail-fact-grid{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg, var(--panel), var(--panel-soft));box-shadow:var(--shadow-sm);grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));display:grid;overflow:hidden}.trail-fact-grid div{border-inline-end:1px solid var(--line-soft);border-block-end:1px solid var(--line-soft);gap:.22rem;min-inline-size:0;padding:.82rem .9rem;display:grid}.trail-fact-grid dt{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:.68rem;font-weight:800}.trail-fact-grid dd{color:var(--spruce-deep);margin:0;font-size:.95rem;font-weight:750;line-height:1.25}.trail-intel-grid,.trail-related-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.8rem;display:grid}.trail-chip-group,.trail-related-card,.trail-source-box{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg, var(--panel), var(--panel-soft));box-shadow:var(--shadow-sm)}.trail-chip-group{padding:.9rem}.trail-chip-group h3,.trail-related h3,.trail-source-box h3{color:var(--spruce-deep);font-family:var(--font-display);font-size:1.05rem;line-height:1.15}.trail-chip-list{flex-wrap:wrap;gap:.42rem;padding:0;list-style:none;display:flex}.trail-chip-list li{border:1px solid color-mix(in srgb, var(--spruce) 22%, var(--line));background:color-mix(in srgb, var(--lichen-pale) 55%, var(--panel));color:var(--spruce-deep);border-radius:999px;padding:.22rem .58rem;font-size:.79rem;font-weight:750}.trail-highlight-strip{border:1px solid color-mix(in srgb, var(--spruce) 28%, var(--line));border-radius:var(--radius);background:linear-gradient(135deg, color-mix(in srgb, var(--spruce) 10%, transparent), transparent 62%), var(--panel);grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));display:grid;overflow:hidden}.trail-highlight-strip div{border-inline-end:1px solid var(--line-soft);gap:.18rem;min-inline-size:0;padding:.75rem .85rem;display:grid}.trail-highlight-strip span{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:.68rem;font-weight:800}.trail-highlight-strip strong{color:var(--spruce-deep);font-size:.95rem;line-height:1.18}.trail-related{gap:.7rem}.trail-related-card{align-content:start;gap:.75rem;padding:.95rem;display:grid}.trail-related-card h4{color:var(--spruce-deep);font-family:var(--font-display);font-size:1.25rem;line-height:1.05}.trail-related-card p,.trail-source-box p,.trail-source-notes{color:var(--muted);font-size:.9rem}.trail-related-type{color:var(--amber-deep);letter-spacing:0;text-transform:uppercase;margin-block-end:.25rem;font-size:.68rem;font-weight:800}.trail-related-coordinates{font-family:var(--font-mono)}.trail-related-card ul,.trail-source-list,.trail-source-notes{padding-inline-start:1.1rem}.trail-related-card li,.trail-source-notes li{margin-block:.18rem}.trail-related-card a,.trail-source-list a{color:var(--spruce-deep);font-weight:800}.trail-source-box{gap:.55rem;padding:.95rem;display:grid}.trail-source-list{flex-wrap:wrap;gap:.32rem .9rem;margin:0;display:flex}.trail-source-notes{margin-block-start:.1rem}.desktop-warning{display:none}.desktop-warning strong{color:var(--spruce-deep);font-family:var(--font-display);font-size:1.05rem}.field-page{inline-size:min(100%,42rem)}.auth-card,.field-context-card,.observation-form,.checkin-card,.observation-detail-card,.report-card,.profile-summary,.admin-card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg, var(--panel), var(--panel-soft));color:var(--spruce-deep);box-shadow:var(--shadow-md);position:relative}.auth-card,.observation-form,.checkin-card,.report-card,.profile-summary,.admin-card{padding:1.25rem}.auth-card h1,.field-context-card h1,.observation-form h1,.profile-summary h1,.admin-header h1{margin-block:0 .3rem}.auth-card>a{color:var(--spruce-deep);font-weight:700}.field-context-card{padding:1rem 1.1rem}.observation-form .cluster{color:var(--spruce-deep);align-items:flex-start}.checkin-card-header,.report-card-header{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.7rem;display:grid}.checkin-card-header h2,.report-card-header h2{margin-block:0 .15rem}.checkin-icon{background:linear-gradient(155deg, var(--spruce-bright), var(--spruce-deep));color:#fff8eb;border-radius:11px;place-items:center;block-size:2.5rem;inline-size:2.5rem;display:grid;box-shadow:inset 0 1px #ffffff38}.checkin-fix-grid,.observation-detail-facts{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 70%, transparent);margin:0;display:grid;overflow:hidden}.checkin-fix-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.checkin-fix-grid div,.observation-detail-facts div{gap:.1rem;padding:.65rem .7rem;display:grid}.checkin-fix-grid div:not(:first-child),.observation-detail-facts div:not(:first-child){border-inline-start:1px solid var(--line-soft)}.checkin-fix-grid dt,.checkin-fix-grid dd,.observation-detail-facts dt,.observation-detail-facts dd{margin:0}.checkin-fix-grid dt,.observation-detail-facts dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.66rem;font-weight:800}.checkin-fix-grid dd,.observation-detail-facts dd{min-inline-size:0;color:var(--spruce-deep);font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.88rem;font-weight:600}.observation-detail-page{inline-size:min(100%,1000px)}.observation-detail-card{gap:1.1rem;padding:.95rem;display:grid}.observation-detail-copy{align-content:center;padding:.25rem}.observation-detail-copy h1{text-transform:capitalize;margin-block:.4rem .25rem}.observation-back-link{inline-size:fit-content;color:var(--spruce-deep);align-items:center;gap:.35rem;font-size:.86rem;font-weight:700;text-decoration:none;transition:gap .16s;display:inline-flex}.observation-back-link:hover{gap:.55rem}.observation-detail-facts{grid-template-columns:1fr}.observation-photo-frame{border-radius:var(--radius);background:radial-gradient(circle at 28% 22%,#fff8eb66,#0000 34%),linear-gradient(150deg,#1f5638e6,#84a05abf);min-block-size:14rem;margin:0;position:relative;overflow:clip}.observation-photo-frame img{object-fit:cover;block-size:100%;min-block-size:14rem;inline-size:100%}.observation-photo-frame>span{color:#fff8eb;place-items:center;min-block-size:14rem;display:grid}.observation-photo-frame figcaption{color:#fff8eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#182d1fb3;border:1px solid #fff8eb66;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .62rem;font-size:.76rem;font-weight:700;display:inline-flex;position:absolute;inset-block-end:.7rem;inset-inline:.7rem}.report-card{gap:.95rem;display:grid}.report-card-header{color:var(--spruce-deep)}.report-login-card{align-items:center;gap:.5rem;inline-size:fit-content;padding:.9rem 1.1rem;font-weight:700;display:inline-flex}.swipe-page{inline-size:min(100%,35rem)}.swipe-stage{justify-items:center;display:grid}.swipe-card{--swipe-x:0px;--swipe-rotate:0deg;inline-size:min(100%,25rem);box-shadow:none;touch-action:pan-y;transform:translateX(var(--swipe-x)) rotate(var(--swipe-rotate));-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:0;transition:transform .18s;position:relative;overflow:hidden}.swipe-card[data-dragging=true]{cursor:grabbing;transition:none}.swipe-photo-frame{aspect-ratio:1;background:radial-gradient(circle at 32% 24%,#fff8eb6b,#0000 36%),linear-gradient(150deg,#1f5638f0,#84a05ac7);margin:0;position:relative;overflow:clip}.swipe-photo-frame img{object-fit:cover;pointer-events:none;block-size:100%;inline-size:100%}.swipe-decision-badge{z-index:2;border-radius:var(--radius-sm);background:var(--panel);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;box-shadow:var(--edge);border:2.5px solid;padding:.3rem .8rem;font-size:.92rem;font-weight:700;position:absolute;inset-block-start:1rem;transform:rotate(-7deg)}.swipe-decision-badge.like{color:var(--spruce);inset-inline-end:1rem}.swipe-decision-badge.skip{color:var(--rowan);inset-inline-start:1rem;transform:rotate(7deg)}.swipe-card-body{gap:.48rem;padding:.85rem 1rem .75rem;display:grid}.swipe-card-body h2,.swipe-card-body p{margin:0}.swipe-card-body h2{font-size:1.35rem}.swipe-category{color:var(--amber-deep);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:600}.swipe-card-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.55rem;font-size:.76rem;font-weight:700;display:flex}.swipe-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;padding:0 .8rem .85rem;display:grid}.swipe-actions .button{min-block-size:46px;inline-size:100%;box-shadow:var(--shadow-sm)}.swipe-empty{justify-items:start}.swipe-empty>svg{color:var(--spruce)}.campaign-dashboard{inline-size:min(100%,1160px)}.campaign-hero{gap:1rem;display:grid}.campaign-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.95rem;display:grid}.campaign-card{align-content:start;gap:.75rem;display:grid;overflow:clip;container-type:inline-size}.campaign-card-topline,.scoreboard-heading,.scoreboard-card-heading{align-items:center;gap:.65rem;display:flex}.campaign-card-topline{justify-content:space-between}.campaign-icon{border-radius:var(--radius-sm);background:var(--spruce);color:#fff;place-items:center;block-size:2.4rem;inline-size:2.4rem;display:grid;box-shadow:inset 0 1px #ffffff38}.challenge-completion-pill{color:#755321;white-space:nowrap;background:#f7dd9e61;border:1px solid #b4832e47;border-radius:999px;padding:.3rem .55rem;font-size:.68rem;font-weight:800;line-height:1}.campaign-card-main{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;display:grid}.campaign-score{block-size:3.85rem;inline-size:3.85rem;color:var(--spruce-deep);font-family:var(--font-mono);background:radial-gradient(circle at 50% 35%, #fff9, transparent 60%), conic-gradient(var(--amber) 0deg, var(--lichen) 0deg);border:3px solid var(--panel);box-shadow:0 0 0 1px var(--line-strong), var(--shadow-sm);border-radius:999px;place-items:center;font-size:1rem;font-weight:600;display:grid}.progress-track{background:var(--paper-deep);border:1px solid var(--line);block-size:.7rem;box-shadow:none;border-radius:999px;position:relative;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--forest), var(--amber));block-size:100%;box-shadow:none;display:block;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.progress-track span:after{content:"";background:linear-gradient(90deg,#0000,#ffffff73,#0000);animation:2.6s ease-in-out infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}}@keyframes shimmer{to{transform:translate(220%)}}.campaign-stats{grid-template-columns:repeat(3,1fr);gap:.45rem;margin:0;display:grid}.campaign-stats div,.campaign-mini{border:1px solid var(--line);border-radius:var(--radius-sm);background:linear-gradient(160deg, var(--panel), var(--panel-soft));padding:.65rem}.campaign-stats dt,.campaign-stats dd{margin:0}.campaign-stats dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.64rem;font-weight:700}.campaign-stats dd{color:var(--spruce-deep);font-family:var(--font-mono);font-size:1.1rem;font-weight:600}.campaign-actions{gap:.55rem}.campaign-actions .button{flex:8rem;justify-content:center;padding:.7rem .85rem}.campaign-mini{box-shadow:var(--shadow-sm);gap:.7rem;display:grid}.scoreboard-section{border-block-start:1px solid var(--line);padding-block-start:1.2rem}.scoreboard-heading h2,.scoreboard-card h3{margin:0}.scoreboard-heading>svg,.scoreboard-card-heading>svg{color:var(--spruce);flex:none}.scoreboard-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.95rem;display:grid}.scoreboard-card{gap:.85rem;display:grid}.scoreboard-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.scoreboard-list li{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--panel) 70%, transparent);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.65rem;display:grid}.scoreboard-list li>span:nth-child(2){gap:.1rem;min-inline-size:0;display:grid}.scoreboard-list li>strong{color:var(--spruce-deep);font-family:var(--font-mono);white-space:nowrap;font-size:.9rem}.scoreboard-rank{background:var(--paper-deep);block-size:1.8rem;inline-size:1.8rem;color:var(--spruce-deep);font-family:var(--font-mono);border-radius:999px;place-items:center;font-size:.82rem;font-weight:700;display:grid}.profile-hero{gap:1.1rem;display:grid}.profile-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:0;display:grid}.profile-stats div{border:1px solid var(--line);border-radius:var(--radius-sm);background:linear-gradient(160deg, var(--panel), var(--panel-soft));padding:.85rem}.profile-stats dt,.profile-stats dd{margin:0}.profile-stats dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:700}.profile-stats dd{color:var(--spruce-deep);font-family:var(--font-mono);font-size:1.4rem;font-weight:600}.profile-dashboard{gap:1.25rem;inline-size:min(100%,1060px)}.profile-summary,.profile-dashboard-hero{gap:1.1rem;padding:clamp(1.1rem,3vw,1.65rem);display:grid}.profile-dashboard-hero{background:linear-gradient(135deg, #1f56381a, transparent 42%), linear-gradient(160deg, #fff, var(--panel-soft));overflow:hidden}.profile-identity{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.85rem;display:grid}.profile-avatar{border:1px solid color-mix(in srgb, var(--spruce) 36%, var(--line));background:radial-gradient(circle at 35% 22%, #ffffffb8, transparent 34%), linear-gradient(155deg, var(--spruce-bright), var(--spruce-deep));color:#fff8eb;block-size:clamp(3.2rem,15vw,4.3rem);inline-size:clamp(3.2rem,15vw,4.3rem);font-family:var(--font-display);box-shadow:var(--shadow-sm);border-radius:16px;place-items:center;font-size:clamp(1.5rem,8vw,2.15rem);font-weight:650;line-height:1;display:grid}.profile-command-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.profile-command-grid .button{text-align:start;letter-spacing:0;justify-content:flex-start;inline-size:100%;min-inline-size:0;padding:.72rem .78rem}.profile-command-grid svg{flex:none}.profile-stat-grid{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--line-soft);grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.profile-stat-grid div{background:color-mix(in srgb, #fff 82%, var(--panel-soft));gap:.12rem;padding:.75rem .8rem;display:grid}.profile-stat-grid div:not(:first-child){border-inline-start:0}.profile-stat-grid dt,.profile-stat-grid dd{margin:0}.profile-stat-grid dt{color:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.07em;text-transform:uppercase;font-size:.62rem;font-weight:600}.profile-stat-grid dd{color:var(--spruce-deep);font-family:var(--font-mono), ui-monospace, monospace;font-size:1.5rem;font-weight:600;line-height:1.05}.profile-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:1rem;display:grid}.profile-work-card{align-content:start;gap:1rem;min-block-size:100%;display:grid}.profile-badge-tree-card{overflow:hidden}.profile-badge-tree{border-radius:var(--radius-sm);background:linear-gradient(180deg, #e8f0d69e, #ffffff38), color-mix(in srgb, var(--panel-soft) 78%, var(--lichen-pale));min-block-size:clamp(20rem,46vw,28rem);position:relative;overflow:hidden}.profile-badge-tree-image{z-index:1;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 14px 16px #122a1c29);pointer-events:none;block-size:97%;inline-size:98%;display:block;position:absolute;inset:3% 1% 0}.profile-branch-badges{z-index:2;margin:0;padding:0;list-style:none;position:absolute;inset:0}.profile-branch-badge{--badge-size:clamp(3.3rem, 7vw, 4.6rem);inline-size:var(--badge-size);block-size:var(--badge-size);background:#ffffffc2;border:2px solid #ffffffd1;border-radius:999px;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 8px 18px #122a1c29,inset 0 0 0 1px #0b4a2914}.profile-branch-badge img{object-fit:contain;block-size:116%;inline-size:116%;display:block}.profile-branch-badge-trail-scout{inset-block-start:58%;inset-inline-start:23%}.profile-branch-badge-bog-guardian{inset-block-start:34%;inset-inline-start:31%}.profile-branch-badge-bird-listener{inset-block-start:18%;inset-inline-start:51%}.profile-branch-badge-photo-keeper{inset-block-start:35%;inset-inline-start:70%}.profile-branch-badge-forest-guide{inset-block-start:58%;inset-inline-start:77%}.profile-badge-tree-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .7rem;margin:0;padding:0;list-style:none;display:grid}.profile-badge-tree-list li{grid-template-columns:2.1rem minmax(0,1fr);align-items:center;gap:.5rem;min-inline-size:0;display:grid}.profile-badge-tree-list img{object-fit:contain;block-size:2.1rem;inline-size:2.1rem;display:block}.profile-badge-tree-list span{gap:.02rem;min-inline-size:0;display:grid}.profile-badge-tree-list strong,.profile-badge-tree-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-badge-tree-list strong{color:var(--spruce-deep);font-size:.82rem;line-height:1.15}.profile-badge-tree-list small{color:var(--muted);font-size:.7rem;line-height:1.15}.profile-section{border-block-start:1px solid var(--line);padding-block-start:1.15rem}.profile-section-heading{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.65rem;display:grid}.profile-section-heading>svg{color:var(--spruce);margin-block-start:.18rem}.profile-section-heading h2{margin-block:0 .16rem}.profile-section-heading p,.profile-section-heading a{margin-block-end:0}.profile-fact-list{gap:.6rem;margin:0;display:grid}.profile-fact-list div{border-block-start:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:1rem;padding-block:.55rem;display:flex}.profile-fact-list div:first-child{border-block-start:0}.profile-fact-list dt,.profile-fact-list dd{margin:0}.profile-fact-list dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.76rem;font-weight:700}.profile-fact-list dd{min-inline-size:0;color:var(--spruce-deep);text-align:end;font-weight:750}.profile-section h2{margin-block:0 .3rem}.badge-grid,.badge-list{flex-wrap:wrap;gap:.55rem;display:flex}.badge-card{gap:.4rem;display:grid}.badge-chip,.profile-empty{border:1px solid color-mix(in srgb, var(--amber) 24%, var(--line));background:linear-gradient(180deg, #fff, var(--lichen-pale));color:var(--spruce-deep);box-shadow:var(--shadow-sm);border-radius:999px;padding:.42rem .72rem;font-size:.82rem;font-weight:700}.badge-chip{align-items:center;gap:.38rem;display:inline-flex}.badge-chip svg{color:var(--amber-deep)}.badge-pill{border:1px solid color-mix(in srgb, var(--amber) 24%, var(--line));background:linear-gradient(180deg, #fff, var(--lichen-pale));color:var(--spruce-deep);box-shadow:var(--shadow-sm);border-radius:999px;padding:.4rem .75rem;font-weight:700}.profile-empty{background:var(--panel-soft);border-color:var(--line);inline-size:fit-content;color:var(--muted);box-shadow:none}.xp-event-list{gap:.6rem;display:grid}.xp-event{border:1px solid var(--line);border-radius:var(--radius-sm);background:linear-gradient(160deg, var(--panel), var(--panel-soft));min-block-size:48px;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .9rem;display:flex}.xp-event span{color:var(--muted);text-transform:capitalize;font-weight:600}.xp-event strong{color:var(--spruce-deep);font-family:var(--font-mono);white-space:nowrap;font-weight:600}.activity-timeline{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.activity-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:linear-gradient(160deg, var(--panel), var(--panel-soft));box-shadow:var(--shadow-sm);grid-template-columns:2.7rem minmax(0,1fr);align-items:start;gap:.7rem;padding:.78rem;display:grid}.activity-icon,.admin-icon{background:linear-gradient(155deg, var(--spruce-bright), var(--spruce-deep));color:#fff8eb;border-radius:11px;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff38}.activity-icon{block-size:2.7rem;inline-size:2.7rem}.activity-icon-observation{background:linear-gradient(155deg, var(--rowan-bright), var(--rowan))}.activity-card>span:last-child,.admin-card-main>span:nth-child(2){gap:.14rem;min-inline-size:0;display:grid}.activity-card .cluster{gap:.45rem;margin-block-start:.4rem}.activity-card .cluster a,.activity-card .cluster button{letter-spacing:0;min-block-size:36px;padding:.42rem .62rem;font-size:.82rem}.activity-card strong,.admin-card strong{color:var(--spruce-deep);font-family:var(--font-display);font-weight:600;line-height:1.2}.admin-page{inline-size:min(100%,1000px)}.admin-header h1{margin-block:0 .3rem}.admin-card-main{grid-template-columns:2.85rem minmax(0,1fr) auto;align-items:center;gap:.75rem;display:grid}.admin-icon{block-size:2.85rem;inline-size:2.85rem}.status-pill{border:1px solid var(--line-strong);background:var(--panel-soft);color:var(--spruce-deep);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.2rem .6rem;font-size:.72rem;font-weight:800}.analytics-list{gap:.85rem;display:grid}.analytics-row{gap:.7rem;display:grid}.analytics-row-header{justify-content:space-between;gap:1rem;display:flex}.analytics-row-header span{color:var(--spruce-deep);text-transform:capitalize;font-weight:700}.analytics-row-header strong{color:var(--rowan);font-family:var(--font-mono)}.auth-page,.offline-page{align-content:center;min-block-size:calc(100dvh - 14rem);inline-size:min(100%,34rem)}.auth-card{padding:1.5rem}@container (min-width:560px){.campaign-card-main{grid-template-columns:1fr auto;align-items:start}.forest-card,.observation-card{grid-template-columns:1fr auto;align-items:center}.profile-hero{grid-template-columns:1fr minmax(16rem,22rem);align-items:start}}@media (min-width:780px){.page{padding-block-end:2.5rem}.home-hero{grid-template-columns:1fr}.trail-page{padding-block-start:.7rem}.trail-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.6rem 1.1rem}.trail-hero>p,.trail-stat-strip{grid-column:1}.trail-hero .cluster{grid-area:1/2/span 3;justify-content:end;align-self:end;max-inline-size:20rem}.observation-detail-card{grid-template-columns:minmax(0,1fr) minmax(20rem,.78fr);align-items:stretch}.observation-detail-facts{grid-template-columns:.74fr 1fr}.observation-photo-frame,.observation-photo-frame img,.observation-photo-frame>span{min-block-size:22rem}.topbar{display:flex}.bottom-nav{display:none}.surface-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.action-panel{grid-template-columns:1fr auto;align-items:center}.desktop-warning{display:block}.field-only{display:none}}@media (max-width:779px){.swipe-page{padding-block-start:.75rem}.swipe-card{inline-size:min(100%,23rem)}.profile-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-work-grid{grid-template-columns:1fr}.profile-stat-grid{grid-template-columns:repeat(auto-fit,minmax(6.8rem,1fr))}}@media (max-width:520px){.page{padding-block-start:1rem}.home-page{gap:1.5rem;padding-block-start:0}.trail-page{padding-block-start:0}.home-hero{gap:1.3rem}.profile-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-stat-grid div:last-child{grid-column:1/-1}.profile-command-grid{gap:.55rem}.profile-command-grid .button{padding-inline:.62rem;font-size:.88rem}.profile-badge-tree{min-block-size:clamp(19rem,82vw,25rem)}.profile-branch-badge{--badge-size:clamp(2.9rem, 12vw, 3.8rem)}.checkin-fix-grid{grid-template-columns:1fr}.checkin-fix-grid div:not(:first-child),.observation-detail-facts div:not(:first-child){border-inline-start:0;border-block-start:1px solid var(--line-soft)}.admin-card-main{grid-template-columns:2.5rem minmax(0,1fr)}.admin-card-main .status-pill{grid-column:1/-1;inline-size:fit-content}.map-trail-grid,.map-observation-grid{grid-template-columns:1fr}.map-page{inline-size:100%;padding-block-start:0;padding-inline:0}.map-page .map-trail-section,.map-page .map-observation-section{padding-inline:1rem}.map-page>.map-shell{box-shadow:none;border:0;border-radius:0}.map-page>.map-shell:before{box-shadow:inset 0 -80px 70px #0f2d1f1a}.map-trail-card{grid-template-columns:2.65rem minmax(0,1fr) auto}.map-trail-icon{block-size:2.65rem;inline-size:2.65rem}.map-trail-facts{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.trail-hero{gap:.6rem}.trail-intel h2{font-size:1.8rem}.trail-intel-grid,.trail-related-grid{grid-template-columns:1fr}.trail-stat-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.trail-stat-strip div{min-inline-size:0;padding:.55rem .5rem}.trail-stat-strip dt{font-size:.62rem;line-height:1.14}.trail-stat-strip dd{font-size:.95rem;line-height:1.18}.trail-hero .cluster{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.trail-hero .cluster .button{min-block-size:44px;padding:.58rem .65rem}.map-shell{min-block-size:500px}.map-canvas{block-size:500px;min-block-size:500px}.map-route-dock{grid-template-columns:repeat(2,minmax(0,1fr));max-inline-size:none;inset-block:auto .75rem;inset-inline:.75rem}}.voice-operator{z-index:80;pointer-events:none;position:fixed;inset-block-end:calc(13.75rem + env(safe-area-inset-bottom,0px));inset-inline-end:.85rem}.voice-operator-control{pointer-events:auto;border:1.5px solid color-mix(in srgb, var(--spruce) 26%, var(--line-strong));block-size:2.85rem;min-inline-size:4.7rem;color:var(--spruce);background:color-mix(in srgb, var(--panel) 88%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.25);backdrop-filter:blur(16px)saturate(1.25);border-radius:999px;justify-content:center;align-items:center;gap:.38rem;padding-inline:.68rem;display:inline-flex;box-shadow:0 .85rem 1.55rem #0f2d1f38,inset 0 1px #ffffff8c}.voice-operator-control:hover,.voice-operator-control:focus-visible{filter:none;box-shadow:var(--shadow-lg);transform:none}.voice-operator-control[data-voice-mode=off]{color:var(--spruce);background:color-mix(in srgb, var(--panel) 88%, transparent)}.voice-operator-control[data-voice-mode=on]{color:#173727;border-color:color-mix(in srgb, #d99a1c 55%, var(--line-strong));background:linear-gradient(145deg,#ffe8a8,#f0bf42)}.voice-operator-control[data-voice-mode=live]{color:#f3fbf4;border-color:color-mix(in srgb, var(--spruce-bright) 60%, #f3fbf4);background:var(--spruce-bright);box-shadow:0 0 0 .35rem #29845433, var(--shadow-md)}.voice-operator-state{letter-spacing:.02em;font-size:.77rem;font-weight:850;line-height:1}@media (max-width:520px){.voice-operator{inset-block-end:calc(13.75rem + env(safe-area-inset-bottom,0px));inset-inline-end:calc(.85rem + env(safe-area-inset-right))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
