:root{--ground:#e8ece3;--surface:#f7f9f4;--ink:#17251d;--muted:#56665b;--line:#c7d1c3;--spruce:#1d3a2c;--spruce-ink:#f1f5ee;--focus:#2f6fd1;--status-green:#2f8a3f;--status-yellow:#e2b112;--status-red:#c4303a;--tree:#7a4b1f;--sign:"Avenir Next Condensed", "Roboto Condensed", "Arial Narrow", sans-serif-condensed, system-ui, sans-serif;--body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--tap:52px;--radius-small:6px;--radius:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#121a15;--surface:#1a251e;--ink:#e4ebe2;--muted:#9aab9f;--line:#2f3d34;--spruce:#9fd0ae;--spruce-ink:#10200f;--focus:#7fb0ff;--status-green:#3fa152;--status-yellow:#e8bb22;--status-red:#e0505a;--tree:#c58a50;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--ground:#121a15;--surface:#1a251e;--ink:#e4ebe2;--muted:#9aab9f;--line:#2f3d34;--spruce:#9fd0ae;--spruce-ink:#10200f;--focus:#7fb0ff;--status-green:#3fa152;--status-yellow:#e8bb22;--status-red:#e0505a;--tree:#c58a50;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--ground);min-height:100%;color:var(--ink);font-family:var(--body);-webkit-text-size-adjust:100%;margin:0;font-size:17px;line-height:1.45}h1,h2,h3,p{margin:0}a{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button,input,select,textarea{font:inherit;color:inherit}.splash{min-height:100vh}.page{flex-direction:column;min-height:100vh;display:flex}.content{width:100%;max-width:40rem;padding:16px 16px calc(120px + env(safe-area-inset-bottom));flex-direction:column;gap:24px;margin:0 auto;display:flex}.app-header{z-index:10;min-height:56px;padding:env(safe-area-inset-top) 12px 0 16px;background:var(--ground);border-bottom:1px solid var(--line);align-items:center;gap:8px;display:flex;position:sticky;top:0}.app-header-title{min-width:0;font-family:var(--sign);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:1.25rem;font-weight:700;overflow:hidden}.app-header-nav{gap:4px;display:flex}.header-link{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;padding:0 10px;font-size:.9rem;text-decoration:none;display:inline-flex}.header-link[aria-current=page]{color:var(--ink)}.back-link{justify-content:center;align-items:center;width:44px;height:44px;margin-left:-10px;display:inline-flex}.back-icon{width:26px;height:26px}.section-title{font-family:var(--sign);margin-bottom:12px;font-size:1.35rem;font-weight:700}.hint{color:var(--muted);font-size:.9rem}.empty{text-align:center;flex-direction:column;gap:4px;padding:32px 0;display:flex}.blaze{--blaze-color:var(--status-red);--blaze-ink:#fff;flex-shrink:0;place-items:center;width:34px;height:44px;display:inline-grid;position:relative}.blaze[data-status=GREEN]{--blaze-color:var(--status-green)}.blaze[data-status=YELLOW]{--blaze-color:var(--status-yellow);--blaze-ink:#23200f}.blaze svg{width:100%;height:100%;fill:var(--blaze-color);position:absolute;inset:0}.blaze-value{font-family:var(--sign);color:var(--blaze-ink);font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:800;line-height:1;position:relative}.blaze-large{width:72px;height:94px}.blaze-large .blaze-value{font-size:2.6rem}.search{position:relative}.search-icon{width:20px;height:20px;color:var(--muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search input{width:100%;min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:0 14px 0 44px}.area-name{font-family:var(--sign);color:var(--muted);margin-bottom:8px;font-size:1.15rem;font-weight:700}.trail-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.trail-row{border-bottom:1px solid var(--line);align-items:stretch;display:flex}.trail-row-link{flex:1;align-items:center;gap:14px;min-width:0;padding:12px 0;text-decoration:none;display:flex}.trail-row-text{flex-direction:column;min-width:0;display:flex}.trail-row-name{font-family:var(--sign);overflow-wrap:anywhere;font-size:1.3rem;font-weight:700;line-height:1.15}.trail-row-alias,.trail-row-meta{color:var(--muted);font-size:.88rem}.trail-row-last{font-size:.88rem;font-weight:600}.trail-row-last[data-type=FALLEN_TREE]{color:var(--tree)}.sweep-button{border:2px solid var(--line);background:var(--surface);width:60px;height:60px;color:var(--spruce);cursor:pointer;touch-action:manipulation;border-radius:50%;flex-shrink:0;align-self:center;place-items:center;margin-left:8px;transition:transform .12s ease-out,background-color .2s;display:grid}.sweep-button:active{transform:scale(.92)}.sweep-button:disabled{opacity:.6}.sweep-icon{width:32px;height:32px}.trail-row[data-just-swept] .sweep-button{background:var(--status-green);border-color:var(--status-green);color:#fff;opacity:1}.trail-row[data-just-swept] .blaze svg{animation:.5s ease-out repaint}@keyframes repaint{0%{clip-path:inset(100% 0 0)}to{clip-path:inset(0)}}.trail-hero{align-items:flex-start;gap:18px;display:flex}.trail-hero-text{flex-direction:column;gap:4px;min-width:0;display:flex}.trail-hero h1{font-family:var(--sign);overflow-wrap:anywhere;font-size:2.1rem;font-weight:800;line-height:1.05}.trail-aliases{color:var(--muted)}.trail-hero-status{font-weight:600}.text-link{color:var(--muted);font-size:.9rem}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.panel summary{min-height:var(--tap);cursor:pointer;align-items:center;padding:0 16px;font-weight:600;display:flex}.panel[open] summary{border-bottom:1px solid var(--line)}.panel .care-form{padding:16px}.care-log{border-left:3px solid var(--line);flex-direction:column;gap:18px;margin:0;padding:0 0 0 16px;list-style:none;display:flex}.care-log-item{flex-direction:column;gap:2px;display:flex;position:relative}.care-log-item:before{content:"";background:var(--muted);border-radius:3px;width:13px;height:13px;position:absolute;top:6px;left:-24px}.care-log-item[data-type=SWEPT]:before{background:var(--status-green)}.care-log-item[data-type=FALLEN_TREE]:before{background:var(--tree)}.care-log-head{flex-wrap:wrap;justify-content:space-between;gap:0 12px;display:flex}.care-log-type{font-weight:700}.care-log-head time,.care-log-by{color:var(--muted);font-size:.9rem}.care-log-item .text-button{align-self:flex-start;margin-left:-8px}.care-log-comment{overflow-wrap:anywhere}.care-form{flex-direction:column;gap:16px;display:flex}.care-form-compact{gap:12px}fieldset{border:0;min-width:0;margin:0;padding:0}legend{color:var(--muted);margin-bottom:8px;padding:0;font-size:.9rem;font-weight:600}.field{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.field>span{color:var(--muted);font-size:.9rem;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:var(--radius-small);background:var(--surface);width:100%;min-height:48px;padding:10px 12px}.field textarea{resize:vertical}.field-row{flex-wrap:wrap;gap:12px;display:flex}.field-row>.field{flex-basis:12rem}.field-row-narrow>.field{flex-basis:7rem}fieldset.field-row>legend{width:100%}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips legend{width:100%}.chip input{opacity:0;pointer-events:none;position:absolute}.chip span{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;min-height:44px;padding:0 16px;display:inline-flex}.chip input:checked+span{background:var(--spruce);border-color:var(--spruce);color:var(--spruce-ink);font-weight:600}.chip[data-type=FALLEN_TREE] input:checked+span{background:var(--tree);border-color:var(--tree);color:#fff}.chip input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}.form-error{color:var(--status-red);font-weight:600}.inline-form{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.inline-form .field{flex-basis:12rem}.button{border:1px solid var(--line);border-radius:var(--radius-small);background:var(--surface);cursor:pointer;touch-action:manipulation;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.button:disabled{opacity:.55;cursor:default}.button-primary{background:var(--spruce);border-color:var(--spruce);color:var(--spruce-ink)}.button-danger{color:var(--status-red)}.button-sweep{border-radius:var(--radius);background:var(--spruce);border-color:var(--spruce);min-height:64px;color:var(--spruce-ink);font-family:var(--sign);font-size:1.35rem}.button-sweep:active{transform:scale(.98)}.button-row{flex-wrap:wrap;gap:8px;display:flex}.text-button{min-height:44px;color:var(--muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 8px;font-size:.9rem;text-decoration:underline}.text-button-danger{color:var(--status-red)}.toast-region{z-index:20;padding:0 12px calc(12px + env(safe-area-inset-bottom));pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.toast{border-radius:var(--radius);background:var(--ink);width:100%;max-width:38rem;min-height:60px;color:var(--ground);pointer-events:auto;align-items:center;gap:12px;padding:8px 8px 8px 18px;animation:.18s ease-out toast-in;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #00000040}.toast[data-tone=error]{background:var(--status-red);color:#fff}.toast-message{flex:1;min-width:0;font-weight:600}.toast-undo{border-radius:var(--radius-small);cursor:pointer;background:0 0;border:2px solid;flex-shrink:0;min-height:44px;padding:0 16px;font-weight:700}.toast-timer{background:var(--status-green);transform-origin:0;width:100%;height:4px;animation:linear forwards toast-timer;position:absolute;bottom:0;left:0}@keyframes toast-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)}}.login{place-items:center;min-height:100vh;padding:24px 16px;display:grid}.login-form{flex-direction:column;gap:18px;width:100%;max-width:22rem;display:flex}.login-mark{align-items:center;gap:14px;display:flex}.login-mark h1{font-family:var(--sign);font-size:2.4rem;font-weight:800}.login-intro{color:var(--muted)}.admin-area{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding:16px 0;display:flex}.admin-area-head{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.admin-area-head .area-name{color:var(--ink);margin:0}.admin-trails{margin:0;padding:0;list-style:none}.admin-trail-link{min-height:var(--tap);flex-wrap:wrap;align-items:center;gap:4px 12px;text-decoration:none;display:flex}.admin-trail-link .blaze{width:18px;height:24px}.admin-trail-name{text-underline-offset:3px;font-weight:600;text-decoration:underline}.admin-passwords{flex-direction:column;gap:16px;display:flex}.admin-password-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.admin-password{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:10px 0;display:flex}.admin-password-text{flex-direction:column;display:flex}.admin-password-label{font-weight:600}.revealed{border:2px solid var(--status-green);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:10px;padding:16px;display:flex}.revealed-password{letter-spacing:.04em;-webkit-user-select:all;user-select:all;font-size:1.5rem;font-weight:700}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.toast-timer{display:none}}.area-toggle{width:100%;min-height:var(--tap);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:0;padding:0;display:flex}.area-toggle:disabled{cursor:default}.area-chevron{flex:none;width:20px;height:20px;transition:transform .15s}.area-toggle[aria-expanded=false] .area-chevron{transform:rotate(-90deg)}.area-toggle:disabled .area-chevron{opacity:.35}.area-summary{font-family:var(--body);color:var(--muted);white-space:nowrap;margin-left:auto;padding-left:12px;font-size:.85rem;font-weight:400}.admin-area-head .area-name{flex:1}.admin-area-body{flex-direction:column;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){.area-chevron{transition:none}}
