/* Layout: Sidebar + Inhalt am Desktop, Tab-Leiste am Handy. Jede Kategorie hat eine feste Farbe. */
:root{
  --bg:#eef1ec; --surface:#ffffff; --surface2:#f5f7f3; --ink:#18241c; --muted:#5a685e; --line:#dce2d9;
  --accent:#25603a; --accent-ink:#ffffff; --accent-soft:#dcebdf;
  --ok:#2d7a43; --warn:#a96a00; --bad:#b3372b;
  --c-feld:#4b8a38; --c-ernte:#c48410; --c-transport:#2874b2; --c-technik:#7767a6;
  --c-tiere:#b0523a; --c-buero:#5b6f7e; --c-urlaub:#bf3f78; --c-krank:#c43b2f;
  --font-display:'Bricolage Grotesque','Source Sans 3',system-ui,sans-serif;
  --font-body:'Source Sans 3',system-ui,-apple-system,'Segoe UI',sans-serif;
  --r:14px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#111913; --surface:#1a241d; --surface2:#212d25; --ink:#e7efe8; --muted:#97a99b; --line:#2e3d33;
  --accent:#74c48d; --accent-ink:#0d1a11; --accent-soft:#24392b;
  --ok:#7fd096; --warn:#e8b04a; --bad:#f08a7e;
  --c-feld:#86c46f; --c-ernte:#efb94a; --c-transport:#6db3ea; --c-technik:#b2a3dc;
  --c-tiere:#e8917a; --c-buero:#a3b5c2; --c-urlaub:#ef8fb8; --c-krank:#ff8a7d; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#111913; --surface:#1a241d; --surface2:#212d25; --ink:#e7efe8; --muted:#97a99b; --line:#2e3d33;
  --accent:#74c48d; --accent-ink:#0d1a11; --accent-soft:#24392b;
  --ok:#7fd096; --warn:#e8b04a; --bad:#f08a7e;
  --c-feld:#86c46f; --c-ernte:#efb94a; --c-transport:#6db3ea; --c-technik:#b2a3dc;
  --c-tiere:#e8917a; --c-buero:#a3b5c2; --c-urlaub:#ef8fb8; --c-krank:#ff8a7d; color-scheme:dark}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.45;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:0}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:var(--bg)}
h1,h2,h3{font-family:var(--font-display);margin:0;font-weight:700;text-wrap:balance;letter-spacing:-.01em}
h1{font-size:1.7rem;line-height:1.15} h2{font-size:1.15rem} h3{font-size:1rem}
p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:var(--accent)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}
svg{display:block}
.ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ic.sm{width:18px;height:18px}

.shell{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:0}
.side{display:none}
.col{min-width:0}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--bg);display:flex;align-items:center;gap:10px;padding:10px 0}
.top .grow{flex:1;min-width:0}
.farmsel{display:flex;flex-direction:column;min-width:0}
.farmsel small{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.farmsel select{appearance:none;background:transparent;border:0;font-family:var(--font-display);font-weight:700;font-size:1.15rem;padding:0 20px 0 0;max-width:100%;text-overflow:ellipsis;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 9px) 55%,calc(100% - 4px) 55%;background-size:5px 5px;background-repeat:no-repeat}
.iconbtn{position:relative;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center}
.iconbtn .dot{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;border-radius:9px;background:var(--bad);color:#fff;font-size:.72rem;font-weight:700;display:grid;place-items:center;padding:0 4px}
.avatar{width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:700;display:grid;place-items:center;font-size:.85rem;flex:none;border:0}
.avatar.sm{width:26px;height:26px;font-size:.7rem}
.view{padding-bottom:140px;display:flex;flex-direction:column;gap:26px;min-width:0}

.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);
  padding:6px max(8px,env(safe-area-inset-left,0px)) calc(6px + env(safe-area-inset-bottom,0px))}
.tab{background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;color:var(--muted);font-size:.74rem;font-weight:600;border-radius:10px}
.tab[aria-current="page"]{color:var(--accent)}
.fab{position:fixed;z-index:25;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(80px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:8px;
  background:var(--accent);color:var(--accent-ink);border:0;border-radius:28px;padding:12px 18px;font-weight:700;box-shadow:0 6px 18px rgba(0,0,0,.25)}

@media (min-width:900px){
  .shell{grid-template-columns:220px minmax(0,1fr);column-gap:36px}
  .side{display:flex;flex-direction:column;gap:4px;position:sticky;top:0;align-self:start;padding:22px 0;height:100vh}
  .brand{font-family:var(--font-display);font-weight:700;font-size:1.5rem;margin-bottom:18px;display:flex;align-items:center;gap:10px}
  .brand i{width:14px;height:14px;border-radius:4px;background:var(--accent);display:block;transform:rotate(45deg)}
  .nav{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;border:0;background:none;text-align:left;color:var(--muted);font-weight:600}
  .nav:hover{background:var(--surface2)}
  .nav[aria-current="page"]{background:var(--accent-soft);color:var(--accent)}
  .tabbar{display:none}
  .fab{bottom:24px}
  .view{padding-bottom:100px}
}

.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px}
.sec{display:flex;flex-direction:column;gap:12px;min-width:0}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.sec-h .sub{color:var(--muted);font-size:.9rem}
.muted{color:var(--muted)} .small{font-size:.88rem} .tnum{font-variant-numeric:tabular-nums}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.spread{justify-content:space-between}
.btn{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:8px 14px;font-weight:600;display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);min-height:40px}
.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.bad{color:var(--bad)}
.btn.sm{padding:4px 10px;min-height:32px;font-size:.9rem}
.btn:disabled{opacity:.5;cursor:default}
.pill{display:inline-flex;align-items:center;gap:6px;border-radius:99px;padding:2px 10px;font-size:.8rem;font-weight:600;background:var(--surface2);border:1px solid var(--line);color:var(--muted)}
.pill.ok{color:var(--ok)} .pill.warn{color:var(--warn)} .pill.bad{color:var(--bad)}

/* Kategorien */
.chip{--c:var(--c-buero);display:inline-flex;align-items:center;gap:6px;border-radius:99px;padding:2px 10px 2px 8px;font-size:.78rem;font-weight:700;
  background:color-mix(in srgb,var(--c) 15%,var(--surface));color:color-mix(in srgb,var(--c) 72%,var(--ink));white-space:nowrap}
.chip i{width:8px;height:8px;border-radius:50%;background:var(--c)}
.cat-feld{--c:var(--c-feld)} .cat-ernte{--c:var(--c-ernte)} .cat-transport{--c:var(--c-transport)} .cat-technik{--c:var(--c-technik)}
.cat-tiere{--c:var(--c-tiere)} .cat-buero{--c:var(--c-buero)} .cat-urlaub{--c:var(--c-urlaub)}
.filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}
.filters .chip{border:1px solid transparent;cursor:pointer;padding:6px 12px 6px 10px;font-size:.85rem}
.filters .chip[aria-pressed="true"]{border-color:var(--c);}
.filters .chip.all{--c:var(--ink);background:var(--surface2)}

/* Aufgaben */
.list{display:flex;flex-direction:column}
.task{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line)}
.list>.task:first-child{border-top:0}
.task .main{min-width:0;display:flex;flex-direction:column;gap:4px}
.task .ttl{font-weight:700}
.task .meta{color:var(--muted);font-size:.88rem}
.task .why{font-size:.88rem;font-style:italic;color:var(--muted)}
.task .acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.task.done .ttl{text-decoration:line-through;color:var(--muted)}
.task.prop{border:1px dashed var(--accent);border-radius:12px;padding:12px;margin:6px 0;background:var(--accent-soft)}
.list>.task.prop:first-child{border-top:1px dashed var(--accent)}
.task.leave .ttl{font-weight:600}

/* Wetter */
.wx{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;text-align:center}
.wx>div{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0;border-radius:10px}
.wx>div.today{background:var(--accent-soft)}
.wx b{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.wx .t{font-weight:700;font-size:.95rem}
.wx .r{font-size:.75rem;color:var(--c-transport)}
@media (max-width:560px){.wx{grid-template-columns:repeat(7,minmax(46px,1fr));overflow-x:auto}}

/* Flächen */
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.fcard{text-align:left;display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px;min-width:0}
.bar{height:8px;border-radius:4px;background:var(--line);overflow:hidden}
.bar>span{display:block;height:100%;background:var(--accent);border-radius:4px}
.bar.ready>span{background:var(--c-ernte)}
.tiles{display:flex;flex-wrap:wrap;gap:6px}
.tile{border:1px solid var(--line);border-radius:8px;padding:8px;display:flex;flex-direction:column;justify-content:space-between;min-height:70px;text-align:left;overflow:hidden;
  background:linear-gradient(0deg,color-mix(in srgb,var(--accent) calc(var(--p)*55%),var(--surface)),var(--surface))}
.tile.ready{background:linear-gradient(0deg,color-mix(in srgb,var(--c-ernte) 55%,var(--surface)),var(--surface))}
.tile b{font-size:.85rem;line-height:1.2;overflow-wrap:anywhere}
.tile span{font-size:.75rem;color:var(--muted)}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.steps li{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:.92rem}
.steps li::before{content:"";width:12px;height:12px;border-radius:50%;border:2px solid var(--line);flex:none}
.steps li.done::before{background:var(--accent);border-color:var(--accent)}
.steps li.now{color:var(--ink);font-weight:700}
.steps li.now::before{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}
.report{display:flex;flex-direction:column;gap:6px;padding-left:18px;margin:0}

/* Tabellen, Plan */
.tw{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}
th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);font-size:.92rem;white-space:nowrap}
th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
td.n,th.n{text-align:right}
.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.day{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:10px;min-width:0}
.day.today{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.day h3{font-size:.9rem;display:flex;justify-content:space-between;margin-bottom:4px}
.day .task{flex-direction:column;gap:6px;padding:8px 0}
@media (max-width:899px){.week{grid-template-columns:1fr}.day .task{flex-direction:row}}
.gantt{display:grid;gap:2px;font-size:.78rem;min-width:560px}
.gantt .nm{padding:4px 6px 4px 0;white-space:nowrap}
.gantt .c{height:22px;border-radius:4px;background:var(--surface2)}
.gantt .c.ok{background:var(--c-urlaub)}
.gantt .c.wait{background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--c-urlaub) 55%,var(--surface)),color-mix(in srgb,var(--c-urlaub) 55%,var(--surface)) 4px,var(--surface2) 4px,var(--surface2) 8px)}
.gantt .hd{text-align:center;color:var(--muted)}
.gantt .hd.we{opacity:.55}

/* Sheets, Formulare */
.sheet{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:center}
.sheet[hidden]{display:none}
.sheet-bg{position:absolute;inset:0;background:rgba(10,18,12,.55)}
.sheet-body{position:relative;background:var(--surface);width:100%;max-width:640px;max-height:92%;overflow-y:auto;border-radius:20px 20px 0 0;
  padding:18px max(16px,env(safe-area-inset-left,0px)) calc(20px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:14px}
.sheet-body.wide{max-width:760px}
@media (min-width:900px){.sheet{align-items:center}.sheet-body{border-radius:20px;padding:22px}}
.fld{display:flex;flex-direction:column;gap:4px;font-size:.88rem;font-weight:600;min-width:0}
.fld input,.fld select,.fld textarea{border:1px solid var(--line);background:var(--surface2);border-radius:10px;padding:9px 12px;font-weight:400;font-size:1rem;width:100%;min-width:0}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:480px){.grid2{grid-template-columns:1fr}}
.form{display:flex;flex-direction:column;gap:12px}
.toast{position:fixed;z-index:60;left:50%;transform:translateX(-50%);bottom:calc(100px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:12px;font-weight:600;max-width:calc(100% - 32px);box-shadow:0 6px 20px rgba(0,0,0,.3)}
.toast[hidden]{display:none}

/* KI */
.chat{display:flex;flex-direction:column;gap:12px;min-height:200px}
.msg{max-width:92%;padding:10px 14px;border-radius:16px;overflow-wrap:anywhere}
.msg.u{align-self:flex-end;background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:4px}
.msg.a{align-self:flex-start;background:var(--surface2);border-bottom-left-radius:4px}
.msg ul{margin:6px 0;padding-left:18px}
.quick{display:flex;gap:8px;flex-wrap:wrap}
.demo-note{font-size:.82rem;color:var(--muted);border:1px dashed var(--line);border-radius:10px;padding:8px 12px}
.ring text{font-family:var(--font-display);font-weight:700;font-size:15px;fill:var(--ink)}
.hero{display:flex;flex-direction:column;gap:4px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px}
.kpi b{font-family:var(--font-display);font-size:1.5rem;display:block}
@media (prefers-reduced-motion:no-preference){.bar>span{transition:width .4s}}

/* Anmeldung */
.auth{max-width:440px;margin:0 auto;padding:40px 0;display:flex;flex-direction:column;gap:18px}
.auth .brand{font-family:var(--font-display);font-weight:700;font-size:2rem;display:flex;align-items:center;gap:10px}
.auth .brand i{width:16px;height:16px;border-radius:4px;background:var(--accent);display:block;transform:rotate(45deg)}
.seg{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:4px}
.seg button{border:0;background:none;border-radius:9px;padding:8px;font-weight:600;color:var(--muted)}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.15)}
.form-err{color:var(--bad);font-weight:600;min-height:1.2em}
.code{font-family:var(--font-display);font-size:1.8rem;letter-spacing:.12em;font-weight:700}
.welcome{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}

[hidden]{display:none!important}
.farmsel{align-items:flex-start}

/* KI-Chat: Verlauf scrollt, Eingabe bleibt unten */
.sheet-body.ai{height:min(88vh,760px);overflow:hidden}
.sheet-body.ai .chat{flex:1;overflow-y:auto;min-height:0;padding-right:4px;overscroll-behavior:contain}
.fab{position:fixed}
.fab .badge{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;border-radius:11px;background:var(--bad);color:#fff;font-size:.8rem;font-weight:700;display:grid;place-items:center;padding:0 6px;border:2px solid var(--bg)}

.tile.empty{background:var(--surface2);border-style:dashed}

.cat-krank{--c:var(--c-krank)}
.gantt .c.sick{background:var(--c-krank)}

.cover{margin-top:6px;padding:8px 10px;border-radius:10px;background:var(--accent-soft);font-size:.9rem;border:1px dashed var(--accent)}

/* Meldungen in der Glocke und markierte Aufgaben */
button.task.note{width:100%;background:none;border:0;border-top:1px solid var(--line);text-align:left;color:inherit;font:inherit;align-items:center;padding-inline:0}
.list>button.task.note:first-child{border-top:0}
button.task.note.has-link{cursor:pointer}
button.task.note.has-link:hover{background:var(--surface2)}
.task.focus{animation:flash 2.4s ease-out;border-radius:10px}
@keyframes flash{0%,55%{box-shadow:0 0 0 3px var(--accent);background:var(--accent-soft)}100%{box-shadow:0 0 0 3px transparent;background:transparent}}
@media (prefers-reduced-motion:reduce){.task.focus{animation:none;box-shadow:0 0 0 3px var(--accent)}}

/* Rückmeldungen */
.feedback{margin-top:6px;padding:8px 12px;border-radius:10px;background:var(--accent-soft);font-size:.95rem;overflow-wrap:anywhere}
.feedback.big{font-size:1.05rem;font-weight:600;padding:10px 14px}
.feedback.urgent{background:color-mix(in srgb,var(--bad) 16%,var(--surface));border:1px solid var(--bad);color:var(--ink)}

/* Einfache Ansicht: große Schrift, große Knöpfe, kräftige Kontraste, weniger Auswahl */
html.simple{font-size:125%}
html.simple body{font-size:1rem;line-height:1.5}
html.simple h1{font-size:1.9rem} html.simple h2{font-size:1.4rem} html.simple h3{font-size:1.15rem}
@media (prefers-color-scheme: light){html.simple:not([data-theme="dark"]){--ink:#000;--muted:#37433a;--line:#a9b5ac;--accent:#1b4a2b}}
html.simple[data-theme="light"]{--ink:#000;--muted:#37433a;--line:#a9b5ac;--accent:#1b4a2b}
html.simple .ic{width:28px;height:28px} html.simple .ic.sm{width:24px;height:24px}
html.simple .btn,html.simple .btn.sm{min-height:56px;padding:10px 20px;font-size:1.05rem;border-width:2px;border-radius:14px}
html.simple .btn.big{width:100%;justify-content:center;min-height:72px;font-size:1.25rem}
html.simple .bigbtns{display:flex;flex-direction:column;gap:12px}
html.simple .bigmsg{font-size:1.3rem;font-weight:700}
html.simple .task{flex-direction:column;gap:12px;padding:16px 0}
html.simple .task .ttl{font-size:1.3rem}
html.simple .task .meta,html.simple .task .why{font-size:1rem}
html.simple .task .acts{width:100%;justify-content:stretch}
html.simple .task .acts .btn{flex:1 1 140px;justify-content:center}
html.simple .task .acts .btn.pri{flex-basis:100%;min-height:64px;font-size:1.2rem}
html.simple button.task.note{flex-direction:row}
html.simple .chip{font-size:.9rem;padding:4px 12px 4px 10px}
html.simple .pill{font-size:.95rem}
html.simple .tabbar{padding-top:8px;grid-template-columns:repeat(4,1fr)}
html.simple .tab{font-size:1rem;gap:4px;padding:8px 2px;min-height:64px}
html.simple .avatar{width:48px;height:48px;font-size:1rem}
html.simple .farmsel select{font-size:1.3rem}
html.simple .fld{font-size:1.05rem}
html.simple .fld input,html.simple .fld select,html.simple .fld textarea{font-size:1.1rem;padding:14px;border-width:2px}
html.simple .grid2{grid-template-columns:1fr}
html.simple .week{grid-template-columns:1fr}
html.simple .fab{bottom:calc(104px + env(safe-area-inset-bottom,0px));padding:16px 22px;font-size:1.1rem}
html.simple .toast{bottom:calc(130px + env(safe-area-inset-bottom,0px));font-size:1.1rem}
html.simple .form p.muted.small,html.simple .demo-note{font-size:.95rem}
html.simple .nav{font-size:1.1rem;padding:14px 12px}
html.simple .seg button{padding:14px;font-size:1.1rem}
html.simple .filters .chip{font-size:1rem;padding:10px 14px}
html.simple .simplebox{background:var(--accent-soft);border-radius:var(--r);padding:14px}
html.simple .wx{grid-template-columns:repeat(7,minmax(64px,1fr));overflow-x:auto}
html.simple input[type=checkbox]{width:28px;height:28px}
.simplebox{border:1px solid var(--line);border-radius:var(--r);padding:12px}
.auth>.btn{align-self:flex-start}
html.simple .top .farmsel select{font-size:1.1rem}
html.simple .top{gap:8px}
html.simple .iconbtn{width:48px;height:48px}
.row>.main{display:flex;flex-direction:column;min-width:0}
html.simple select{min-height:52px;font-size:1.05rem}
.brand img{width:34px;height:34px;object-fit:contain;background:#fff;border-radius:9px;padding:3px;flex:none}
.auth .brand img{width:44px;height:44px;border-radius:12px}
.heroart{display:block;width:100%;height:auto;border-radius:var(--r);aspect-ratio:3/2;object-fit:cover}
.heroart.sm{aspect-ratio:3/1;object-position:50% 60%}
.auth .brand{display:none}

/* Karte, Lager, Vieh, Auswertung */
.map{height:min(62vh,560px);min-height:340px;border-radius:var(--r);border:1px solid var(--line);overflow:hidden;background:var(--surface2);z-index:0}
.map.short{height:300px;min-height:240px}
.leaflet-container{font-family:var(--font-body)}
.maplabel{background:rgba(255,255,255,.85);border:0;box-shadow:none;color:#18241c;font-weight:700;font-size:.8rem;padding:1px 6px}
.legend{gap:16px}.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
#maptools select{min-height:40px;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:6px 10px;max-width:100%}
details.more{border:1px solid var(--line);border-radius:12px;padding:10px 12px}
details.more summary{cursor:pointer;font-weight:600}
details.more .form{margin-top:12px}
html.simple .map{height:min(55vh,520px)}
.hidelabels .maplabel{display:none}
#maptools label.row{flex-wrap:nowrap;align-items:flex-start}
