/* TARTARUGA v5.0 CLEAN REBUILD — no legacy CSS */
:root{
  --bg:#eef7f8;
  --paper:#ffffff;
  --paper2:#f7fcfd;
  --ink:#143d45;
  --muted:#617781;
  --teal:#087f98;
  --teal2:#27bfd1;
  --line:#cfe8ed;
  --gold:#e9b73f;
  --shadow:0 18px 48px rgba(29,78,91,.13);
  --radius:28px;
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}
*{box-sizing:border-box}
html,body{width:100%;min-height:100%;margin:0;overflow-x:hidden;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif}
body:before{content:"";position:fixed;inset:0;z-index:-1;background:
  radial-gradient(circle at 15% 0%,rgba(39,191,209,.12),transparent 22rem),
  radial-gradient(circle at 100% 90%,rgba(233,183,63,.12),transparent 20rem),
  linear-gradient(180deg,#f8fcfd 0%,#eef7f8 55%,#e8f2f3 100%);
}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{max-width:100%}
.hidden{display:none!important}
.app{min-height:100dvh;width:100%;max-width:100%;overflow-x:hidden}
.main{width:100%;max-width:1180px;margin:0 auto;padding:12px 14px calc(98px + var(--safe-bottom));}
.screen{width:100%;display:grid;gap:18px}
.topbar{position:sticky;top:10px;z-index:50;display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:12px;align-items:center;padding:17px 18px;margin-bottom:18px;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.94);box-shadow:var(--shadow);backdrop-filter:blur(16px)}
.topbar span{display:block;color:#58a9b7;font-size:.76rem;letter-spacing:.18em;font-weight:900}
.topbar h1{margin:.18rem 0 0;color:var(--ink);font-size:clamp(1.7rem,7vw,2.8rem);line-height:1;letter-spacing:-.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.menu-button{width:58px;height:58px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--teal);font-size:1.8rem;display:grid;place-items:center;box-shadow:0 8px 22px rgba(29,78,91,.10)}
.drawer{position:fixed;top:10px;right:10px;width:min(86vw,410px);height:calc(100dvh - 20px);z-index:1000;padding:20px;border-radius:32px;background:rgba(255,255,255,.97);border:1px solid var(--line);box-shadow:0 28px 70px rgba(13,61,72,.25);backdrop-filter:blur(20px);transform:translateX(calc(100% + 24px));opacity:0;visibility:hidden;pointer-events:none;transition:.25s ease;overflow-y:auto}
body.drawer-open:before{z-index:990;background:rgba(6,40,48,.26);backdrop-filter:blur(2px)}
body.drawer-open .drawer{transform:translateX(0);opacity:1;visibility:visible;pointer-events:auto}
.drawer-brand{display:grid;grid-template-columns:78px minmax(0,1fr);gap:14px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:14px}
.drawer-brand img{width:78px}
.drawer-brand strong{display:block;letter-spacing:.12em;color:var(--teal);font-size:1.3rem}
.drawer-brand span{color:var(--muted);line-height:1.35}
.drawer-nav{display:grid;gap:8px}
.drawer-nav button{display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;align-items:center;width:100%;text-align:left;border:0;background:transparent;color:var(--teal);font-weight:800;border-radius:18px;padding:14px}
.drawer-nav button.active{background:#edf9fb;color:var(--ink)}
.drawer-reset{margin:14px 0;width:100%;border:1px solid var(--line);background:#fff;border-radius:18px;padding:14px;color:var(--teal);font-weight:800}
.drawer-mode{margin-top:12px;border:1px solid var(--line);border-radius:22px;background:#f4fbfc;padding:16px}
.drawer-mode small{display:block;text-transform:uppercase;letter-spacing:.15em;font-weight:900;color:#7e929a}
.drawer-mode strong{display:block;margin:.4rem 0;color:var(--ink);font-size:1.35rem}
.drawer-mode p{margin:0;color:var(--muted);line-height:1.45}
.tabbar{position:fixed;left:10px;right:10px;bottom:calc(8px + var(--safe-bottom));z-index:70;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;padding:8px;border-radius:25px;background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:0 18px 42px rgba(29,78,91,.18);backdrop-filter:blur(18px)}
.tabbar button{height:58px;border:0;background:transparent;border-radius:18px;color:#596f77;display:grid;place-items:center;gap:3px;font-weight:800;font-size:.72rem}
.tabbar button b{font-size:1.28rem;line-height:1}
.tabbar button.active{background:linear-gradient(180deg,#0b98b4,#087f98);color:#fff}
/* onboarding */
.onboarding-shell{min-height:calc(100dvh - 24px);display:grid;place-items:center;padding:8px}
.intro-card{position:relative;width:min(100%,760px);overflow:hidden;border-radius:36px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(247,253,253,.96));box-shadow:var(--shadow);padding:clamp(22px,5vw,44px);display:grid;gap:18px}
.intro-card:before,.intro-card:after{content:"";position:absolute;left:0;right:0;height:130px;pointer-events:none;opacity:.24;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 400'%3E%3Cg fill='none' stroke='%239cd5de' stroke-width='1'%3E%3Cpath d='M-20 80c90-62 185-64 278-14 81 44 151 41 220-6 90-62 191-61 340-3'/%3E%3Cpath d='M-20 130c90-62 185-64 278-14 81 44 151 41 220-6 90-62 191-61 340-3'/%3E%3Cpath d='M-20 310c90-62 185-64 278-14 81 44 151 41 220-6 90-62 191-61 340-3'/%3E%3C/g%3E%3C/svg%3E");background-size:900px 450px}
.intro-card:before{top:0}.intro-card:after{bottom:-25px;transform:scaleY(-1)}
.brand-center{position:relative;z-index:1;display:grid;justify-items:center;text-align:center;gap:8px}
.brand-center img{width:clamp(105px,24vw,170px)}
.brand-center strong{color:var(--teal);font-size:clamp(1.8rem,6vw,3rem);letter-spacing:.14em}
.brand-center span{color:var(--muted);font-size:clamp(.96rem,2.8vw,1.2rem)}
.intro-art{position:relative;z-index:1;display:grid;place-items:center;margin:0 auto}
.intro-art img{width:min(100%,610px);filter:drop-shadow(0 22px 36px rgba(27,102,120,.12))}
.intro-copy{text-align:center;position:relative;z-index:1}
.intro-copy h2{margin:0;color:var(--teal);font-size:clamp(2.25rem,9vw,4rem);line-height:1.04;letter-spacing:-.055em}
.intro-copy h2 span{color:var(--gold)}
.intro-copy p{margin:14px auto 0;max-width:34ch;color:var(--muted);font-size:clamp(1.04rem,3.5vw,1.36rem);line-height:1.48}
.actions{position:relative;z-index:1;display:grid;gap:14px;width:min(100%,560px);margin:0 auto}
.primary,.ghost,.text{border-radius:18px;padding:17px 20px;font-weight:900;font-size:1.05rem}
.primary{border:0;background:linear-gradient(180deg,#0b98b4,#087f98);color:#fff;box-shadow:0 14px 30px rgba(13,138,164,.22)}
.primary span{color:var(--gold);margin-left:8px}
.ghost{background:#fff;color:var(--teal);border:2px solid #69b7c4}
.text{background:transparent;border:0;color:var(--teal);box-shadow:none}
.progress{position:relative;z-index:1;display:flex;justify-content:center;align-items:center;gap:12px;color:#36a4b4}
.progress i{width:12px;height:12px;border-radius:50%;background:#d8e3e6}.progress i.active{background:#27bfd1}.progress b{margin-left:24px;font-weight:700}
.choice-list{position:relative;z-index:1;display:grid;gap:14px}
.choice{display:grid;grid-template-columns:96px minmax(0,1fr) 36px;gap:12px;align-items:center;width:100%;text-align:left;border-radius:22px;border:1.5px solid var(--line);background:rgba(255,255,255,.82);padding:12px;color:var(--teal)}
.choice.selected{border-color:var(--teal);background:#f5ffff;box-shadow:0 12px 30px rgba(13,147,170,.09)}
.choice img{height:78px;object-fit:contain;width:100%}
.choice strong{display:block;font-size:1.16rem;margin-bottom:5px}.choice span{display:block;color:var(--muted);font-size:.91rem;line-height:1.35}.choice em{width:34px;height:34px;border-radius:50%;background:var(--teal);color:#fff;display:grid;place-items:center;font-style:normal;font-weight:900}
/* app cards */
.hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:18px;align-items:center;padding:22px;border-radius:30px;border:1px solid var(--line);background:rgba(255,255,255,.86);box-shadow:var(--shadow);overflow:hidden}
.hero-art{border-radius:24px;background:linear-gradient(180deg,rgba(39,191,209,.08),rgba(232,248,250,.84));display:grid;place-items:center;padding:14px;border:1px solid rgba(35,139,157,.16)}
.hero-art img{max-height:280px;object-fit:contain}
.eyebrow{display:block;margin:0 0 8px;color:#59a8b5;font-size:.76rem;letter-spacing:.15em;text-transform:uppercase;font-weight:900}
.hero h2,.card h2{margin:0;color:var(--teal);font-size:clamp(2rem,7vw,3.3rem);line-height:.98;letter-spacing:-.055em}
.hero p,.card p{color:var(--muted);line-height:1.55}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.hero-actions button{min-width:150px}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.kpis article,.card{border-radius:24px;background:rgba(255,255,255,.86);border:1px solid var(--line);box-shadow:0 12px 30px rgba(38,82,94,.08);padding:18px}
.kpis span{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#78d0da,#39b4c4)}
.kpis strong{display:block;margin-top:8px;color:var(--teal);font-size:2rem}.kpis small{color:var(--muted)}
.grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.action-list{display:grid;gap:12px}
.action-list button{display:grid;grid-template-columns:54px minmax(0,1fr) 22px;gap:12px;align-items:center;text-align:left;border:1px solid var(--line);background:linear-gradient(180deg,#f2fbfc,#e9f7fa);border-radius:20px;padding:13px;color:var(--teal)}
.action-list i{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#78d0da,#39b4c4);font-style:normal}.action-list b{display:block}.action-list small{color:var(--muted);line-height:1.35}.action-list em{font-size:1.5rem;font-style:normal}
.section-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.section-title h2{font-size:1.55rem}
.form{display:grid;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:800;color:var(--ink)}.field small{color:var(--muted)}input,select,textarea{width:100%;max-width:100%;min-width:0;border:1px solid var(--line);border-radius:16px;padding:13px 14px;background:#fff;color:var(--ink)}textarea{min-height:105px;resize:vertical}input[type=date],input[type=datetime-local],input[type=time],input[type=number]{-webkit-appearance:none;appearance:none}
.tablewrap{overflow-x:auto;border-radius:18px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:11px;border-bottom:1px solid #e7f1f3;text-align:left}th{color:#78909a;text-transform:uppercase;font-size:.75rem;letter-spacing:.08em}
.bars{display:grid;gap:10px}.bar div{height:10px;background:#e2f2f5;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#27bfd1,#087f98)}.bar header{display:flex;justify-content:space-between;color:var(--ink);font-weight:800}
.badge{display:inline-block;background:#edf9fb;border:1px solid var(--line);border-radius:999px;padding:7px 10px;color:var(--teal);font-weight:800}
.mapbox{height:280px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#e5f5f7,#fff);position:relative;overflow:hidden}
.mapbox:after{content:"Offline map / coordinate preview";position:absolute;left:16px;bottom:16px;color:#6b858d;font-weight:800}
.recent{display:grid;gap:10px}.recent-row{display:grid;grid-template-columns:42px minmax(0,1fr) 18px;gap:12px;align-items:start;padding:13px;border:1px solid var(--line);border-radius:18px;background:#fff}.recent-row i{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#dcf4f7;font-style:normal}.recent-row b{display:block;color:var(--ink)}.recent-row small,.recent-row time{display:block;color:var(--muted);line-height:1.35}
@media(min-width:1000px){.main{padding-left:330px}.drawer{position:fixed;left:18px;right:auto;top:18px;height:calc(100dvh - 36px);width:292px;transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto}.menu-button{display:none}.tabbar{left:calc(50% + 160px);width:min(720px,calc(100vw - 380px));right:auto;transform:translateX(-50%)}}
@media(max-width:820px){.hero,.grid{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.screen{gap:16px}}
@media(max-width:430px){.main{padding-left:8px;padding-right:8px}.topbar{border-radius:24px;padding:14px}.tabbar{left:8px;right:8px}.tabbar button{font-size:.66rem}.hero,.card{padding:16px;border-radius:24px}.choice{grid-template-columns:82px minmax(0,1fr) 32px}.choice img{height:66px}}


/* TARTARUGA v5.1 - bottom bar and navigation fixes */
.drawer-separator {
  width: 100%;
  border: 0;
  border-top: 1px solid var(--line);
  margin: 8px 0;
}
.tabbar {
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  transform: none !important;
  border-radius: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  padding: 7px 8px calc(7px + var(--safe-bottom)) !important;
  box-shadow: 0 -10px 28px rgba(29,78,91,.14) !important;
}
.tabbar button {
  border-radius: 16px !important;
}
.main {
  padding-bottom: calc(84px + var(--safe-bottom)) !important;
}
@media(min-width:1000px){
  .tabbar {
    left: 300px !important;
    right: 0 !important;
    width: auto !important;
    max-width: none !important;
    transform: none !important;
  }
}
@media(max-width:430px){
  .tabbar {
    left: 0 !important;
    right: 0 !important;
    max-width: 100vw !important;
  }
}


/* TARTARUGA v5.2 - implemented drawn dashboard, seamless art + custom icons */
.app-icon,
.tab-icon,
.button-icon,
.drawn-metrics span,
.drawn-quick button > span {
  display: grid;
  place-items: center;
  color: currentColor;
}
.app-icon svg,
.tab-icon svg,
.button-icon svg,
.drawn-metrics svg,
.drawn-quick svg,
.menu-button svg {
  width: 100%;
  height: 100%;
  display: block;
}
.menu-button {
  font-size: 0 !important;
}
.menu-button svg {
  width: 30px !important;
  height: 30px !important;
}
.drawer-nav button {
  grid-template-columns: 34px minmax(0,1fr) !important;
}
.drawer-nav .app-icon {
  width: 28px;
  height: 28px;
}
.tabbar button b {
  display: none !important;
}
.tabbar button .tab-icon {
  width: 30px;
  height: 30px;
}
.tabbar button span:last-child {
  font-size: .78rem;
}
.drawn-dashboard {
  display: grid;
  gap: 18px;
  width: 100%;
  max-width: 100%;
}
.drawn-hero-image-card {
  width: 100%;
  max-width: 100%;
  border-radius: 30px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 18px 44px rgba(38,82,94,.10);
}
.drawn-hero-image-card img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: center;
}
.drawn-mode-copy {
  padding: 0 8px;
}
.drawn-mode-copy h2 {
  margin: 0;
  color: var(--teal);
  font-size: clamp(2.25rem, 8vw, 3.8rem);
  line-height: .98;
  letter-spacing: -.06em;
}
.drawn-mode-copy p {
  max-width: 42rem;
  margin: 14px 0 0;
  color: var(--muted);
  font-size: clamp(1.05rem, 3.7vw, 1.32rem);
  line-height: 1.5;
}
.drawn-hero-actions {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 12px;
  margin-top: 22px;
}
.drawn-hero-actions button {
  min-height: 72px;
  border-radius: 20px;
  display: grid;
  grid-template-columns: 54px minmax(0,1fr) 24px;
  align-items: center;
  gap: 12px;
  text-align: left;
  padding: 12px 18px;
}
.drawn-hero-actions .button-icon {
  width: 48px;
  height: 48px;
  border-radius: 999px;
}
.drawn-primary .button-icon {
  color: #fff;
}
.drawn-primary {
  background: linear-gradient(180deg,#087f98,#066d82) !important;
}
.drawn-secondary .button-icon {
  color: var(--teal);
  background: #e6f5f8;
}
.drawn-hero-actions b {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.drawn-hero-actions em,
.drawn-quick em {
  font-style: normal;
  font-size: 1.7rem;
  line-height: 1;
}
.drawn-change {
  grid-column: 1 / -1;
  min-height: 54px !important;
  display: flex !important;
  justify-content: center;
  text-align: center;
}
.drawn-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}
.drawn-metrics article {
  border-radius: 22px;
  background: rgba(255,255,255,.88);
  border: 1px solid var(--line);
  box-shadow: 0 12px 30px rgba(38,82,94,.08);
  padding: 15px 10px;
  min-width: 0;
}
.drawn-metrics article > span {
  width: 48px;
  height: 48px;
  margin: 0 auto 10px;
  color: var(--teal);
  border-radius: 999px;
  background: #e8f7f9;
}
.drawn-metrics article > span svg {
  width: 31px;
  height: 31px;
}
.drawn-metrics strong {
  display: block;
  color: var(--teal);
  font-size: clamp(1.45rem, 5.6vw, 2.25rem);
  line-height: 1;
  letter-spacing: -.045em;
  text-align: center;
}
.drawn-metrics small {
  display: block;
  color: var(--muted);
  line-height: 1.25;
  text-align: center;
  margin-top: 7px;
}
.drawn-quick {
  display: grid;
  gap: 10px;
}
.drawn-quick h3 {
  margin: 0 0 2px 8px;
  color: var(--teal);
  font-size: 1.35rem;
}
.drawn-quick button {
  width: 100%;
  display: grid;
  grid-template-columns: 62px minmax(0,1fr) 24px;
  gap: 14px;
  align-items: center;
  text-align: left;
  border: 1px solid var(--line);
  background: #eef9fb;
  color: var(--teal);
  border-radius: 22px;
  padding: 14px 18px;
}
.drawn-quick button > span {
  width: 56px;
  height: 56px;
  border-radius: 999px;
  background: #dff3f7;
}
.drawn-quick button > span svg {
  width: 34px;
  height: 34px;
}
.drawn-quick b {
  display: block;
  font-size: 1.15rem;
}
.drawn-quick small {
  display: block;
  color: var(--muted);
  margin-top: 2px;
}
.drawn-recent {
  margin-bottom: 10px;
}
.recent-row i svg {
  width: 28px;
  height: 28px;
  color: var(--teal);
}
@media(min-width:1000px){
  .drawn-dashboard {
    max-width: 900px;
    margin: 0 auto;
  }
}
@media(max-width:650px){
  .drawn-hero-actions {
    grid-template-columns: 1fr;
  }
  .drawn-metrics {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
@media(max-width:430px){
  .drawn-hero-image-card {
    border-radius: 24px;
  }
  .drawn-mode-copy {
    padding: 0 4px;
  }
  .drawn-hero-actions button {
    min-height: 64px;
  }
  .drawn-metrics {
    gap: 9px;
  }
  .drawn-metrics article {
    padding: 13px 8px;
  }
}


/* TARTARUGA v5.3 - new PNG hero assets + real fixed bottom bar + GPS controls */

/* Hero images: full animal, no crop, white seamless card */
.drawn-hero-image-card {
  background: #fff !important;
  padding: 0 !important;
}
.drawn-hero-image-card img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #fff !important;
  display: block !important;
}

/* Also prevent profile/chooser art from being clipped. */
.choice img {
  object-fit: contain !important;
  background: transparent !important;
}
.hero-art img,
.intro-art img {
  object-fit: contain !important;
}

/* GPS button inside forms */
.gps-field {
  margin: 2px 0 4px;
}
.get-gps-btn {
  width: 100%;
  display: grid !important;
  grid-template-columns: 52px minmax(0,1fr);
  gap: 12px;
  align-items: center;
  text-align: left;
  padding: 13px 16px !important;
  background: #eef9fb !important;
}
.get-gps-btn .button-icon {
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: #dff3f7;
  color: var(--teal);
}
.get-gps-btn b {
  display: block;
  line-height: 1.1;
}
.get-gps-btn small {
  display: block;
  color: var(--muted);
  font-weight: 650;
  line-height: 1.25;
  margin-top: 3px;
}
.gps-status {
  margin: 8px 4px 0 !important;
  color: var(--muted) !important;
  font-size: .9rem;
}

/* Hard bottom dock: solid, full-width, with a content guard so text cannot show behind it */
:root {
  --tabbar-height: 84px;
}
.main {
  padding-bottom: calc(var(--tabbar-height) + 34px + var(--safe-bottom)) !important;
}
.tabbar {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  transform: none !important;
  border-radius: 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--line) !important;
  padding: 8px 10px calc(8px + var(--safe-bottom)) !important;
  min-height: calc(var(--tabbar-height) + var(--safe-bottom)) !important;
  background: #ffffff !important;
  box-shadow: 0 -14px 34px rgba(29,78,91,.16) !important;
  backdrop-filter: none !important;
  z-index: 5000 !important;
}
.tabbar::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: 24px;
  background: linear-gradient(180deg, rgba(238,247,248,0), #ffffff);
  pointer-events: none;
}
.tabbar button {
  height: 60px !important;
  min-height: 60px !important;
  border-radius: 18px !important;
  background: transparent;
}
.tabbar button.active {
  background: linear-gradient(180deg,#0b98b4,#087f98) !important;
  color: #fff !important;
}
body::after {
  content: "";
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  height: calc(var(--tabbar-height) + var(--safe-bottom));
  background: #fff;
  z-index: 4999;
  pointer-events: none;
}
@media(min-width:1000px){
  .tabbar {
    left: 300px !important;
    right: 0 !important;
    width: auto !important;
    max-width: none !important;
  }
  body::after {
    left: 300px;
  }
}
@media(max-width:430px){
  :root { --tabbar-height: 82px; }
  .tabbar {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .tabbar button {
    height: 58px !important;
    min-height: 58px !important;
  }
}


/* TARTARUGA v5.4 - EMI ZIP import status */
#emiImportStatus,
#importStatus {
  margin-top: 10px;
  color: var(--muted);
  line-height: 1.45;
  font-weight: 650;
}


/* TARTARUGA v5.5 — mobile/desktop polish */

/* Fixed intro: the first welcome page must behave like a locked screen, not a scrolling page. */
body.intro-screen-active {
  overflow: hidden !important;
}
body.intro-screen-active .main {
  height: 100dvh !important;
  max-height: 100dvh !important;
  padding: 0 !important;
  overflow: hidden !important;
}
body.intro-screen-active .screen {
  height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
  padding: 0 !important;
}
body.intro-screen-active .onboarding-shell {
  height: 100dvh !important;
  min-height: 100dvh !important;
  overflow: hidden !important;
  padding: 10px !important;
}
body.intro-screen-active .intro-card {
  max-height: calc(100dvh - 20px) !important;
  overflow: hidden !important;
}

/* Chooser: requested text removed in JS; keep layout tighter. */
.choose-copy {
  margin-bottom: 4px !important;
}
body.chooser-screen-active .intro-copy p {
  display: none !important;
}

/* Get GPS button: compact, not a huge panel. */
.gps-field {
  margin: 0 !important;
}
.get-gps-btn {
  min-height: 58px !important;
  height: auto !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0,1fr) !important;
  gap: 11px !important;
  align-items: center !important;
  text-align: left !important;
  padding: 9px 12px !important;
  border-radius: 16px !important;
  background: #f2fbfc !important;
}
.get-gps-btn .button-icon {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  border-radius: 999px !important;
}
.get-gps-btn .button-icon svg {
  width: 25px !important;
  height: 25px !important;
}
.gps-btn-copy {
  min-width: 0 !important;
  display: grid !important;
  gap: 1px !important;
}
.gps-btn-copy b {
  display: block !important;
  font-size: 1.02rem !important;
  line-height: 1.05 !important;
}
.gps-btn-copy small {
  display: block !important;
  color: var(--muted) !important;
  font-weight: 650 !important;
  font-size: .84rem !important;
  line-height: 1.2 !important;
  white-space: normal !important;
}
.gps-status {
  margin: 6px 2px 0 !important;
  font-size: .84rem !important;
}

/* App cannot be widened by forms, tables, long values or buttons. */
.card,
.hero,
.form,
.form-grid,
.field,
.tablewrap,
.responsive-table,
.hero-actions,
.actions {
  max-width: 100% !important;
  min-width: 0 !important;
}
.card {
  overflow: hidden !important;
}
.form button,
.form .primary,
.form .ghost {
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
}
.form > .primary,
.form .hero-actions .primary,
.form .hero-actions .ghost {
  width: 100% !important;
}

/* Responsive tables: desktop table, mobile record cards. */
.tablewrap {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  contain: inline-size !important;
}
.responsive-table {
  width: 100% !important;
  max-width: 100% !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
}
.responsive-table th,
.responsive-table td {
  max-width: 18rem !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}
@media(max-width: 760px) {
  .tablewrap {
    overflow-x: hidden !important;
    border: 0 !important;
    background: transparent !important;
  }
  .responsive-table,
  .responsive-table thead,
  .responsive-table tbody,
  .responsive-table tr,
  .responsive-table th,
  .responsive-table td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .responsive-table thead {
    display: none !important;
  }
  .responsive-table tr {
    margin: 0 0 12px !important;
    border: 1px solid var(--line) !important;
    border-radius: 18px !important;
    background: #fff !important;
    overflow: hidden !important;
    box-shadow: 0 8px 18px rgba(38,82,94,.06) !important;
  }
  .responsive-table td {
    display: grid !important;
    grid-template-columns: minmax(92px, 36%) minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: start !important;
    padding: 10px 12px !important;
    border-bottom: 1px solid #e7f1f3 !important;
    text-align: left !important;
    font-size: .96rem !important;
  }
  .responsive-table td::before {
    content: attr(data-label);
    color: #78909a;
    text-transform: uppercase;
    font-size: .72rem;
    letter-spacing: .08em;
    font-weight: 900;
  }
  .responsive-table td:last-child {
    border-bottom: 0 !important;
  }
}

/* Bottom dock: keep it fixed, opaque and reserve enough scroll space above it. */
:root {
  --tabbar-height: 92px;
}
.main {
  padding-bottom: calc(var(--tabbar-height) + 96px + var(--safe-bottom)) !important;
}
.screen {
  padding-bottom: calc(var(--tabbar-height) + 52px + var(--safe-bottom)) !important;
}
.tabbar {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  transform: none !important;
  border-radius: 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--line) !important;
  background: #ffffff !important;
  opacity: 1 !important;
  backdrop-filter: none !important;
  min-height: calc(var(--tabbar-height) + var(--safe-bottom)) !important;
  padding: 8px 10px calc(8px + var(--safe-bottom)) !important;
  z-index: 7000 !important;
  box-shadow: 0 -16px 34px rgba(29,78,91,.18) !important;
}
.tabbar::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 100% !important;
  height: 36px !important;
  background: linear-gradient(180deg, rgba(238,247,248,0), #fff 88%) !important;
  pointer-events: none !important;
}
body::after {
  content: "" !important;
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: calc(var(--tabbar-height) + var(--safe-bottom)) !important;
  background: #fff !important;
  z-index: 6999 !important;
  pointer-events: none !important;
}

/* Desktop / PC: use full available width, not a narrow mobile column. */
@media(min-width:1000px){
  .main {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding-left: 330px !important;
    padding-right: 28px !important;
    padding-bottom: calc(var(--tabbar-height) + 64px) !important;
  }
  .screen {
    width: 100% !important;
    max-width: none !important;
  }
  .drawn-dashboard,
  .hero,
  .grid,
  .kpis,
  .card {
    max-width: none !important;
  }
  .drawn-dashboard {
    width: 100% !important;
    margin: 0 !important;
  }
  .grid {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
  .form-grid {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  }
  .field.full,
  .gps-field.full {
    grid-column: 1 / -1 !important;
  }
  .tabbar {
    left: 300px !important;
    right: 0 !important;
    width: auto !important;
    max-width: none !important;
  }
  body::after {
    left: 300px !important;
  }
  .tablewrap {
    overflow-x: auto !important;
  }
}
@media(min-width:1400px){
  .form-grid {
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  }
}
@media(max-width:430px){
  :root {
    --tabbar-height: 90px;
  }
  .main {
    padding-bottom: calc(var(--tabbar-height) + 104px + var(--safe-bottom)) !important;
  }
  .screen {
    padding-bottom: calc(var(--tabbar-height) + 58px + var(--safe-bottom)) !important;
  }
}

/* TARTARUGA v5.6 — intro/chooser viewport fix */

/* The white guard belongs only behind the real bottom taskbar. It must not appear
   on Welcome or Choose turtle group screens where the taskbar is hidden. */
body.intro-screen-active::after,
body.chooser-screen-active::after {
  display: none !important;
  content: none !important;
}
body.intro-screen-active .tabbar,
body.chooser-screen-active .tabbar {
  display: none !important;
}

/* Welcome page: fixed, but fitted into the visible viewport on iPhone and tablets. */
body.intro-screen-active {
  overflow: hidden !important;
  min-height: 100dvh !important;
}
body.intro-screen-active .main {
  width: 100% !important;
  max-width: none !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
body.intro-screen-active .screen {
  height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
  padding: 0 !important;
  display: grid !important;
}
body.intro-screen-active .onboarding-shell {
  height: 100dvh !important;
  min-height: 100dvh !important;
  max-height: 100dvh !important;
  padding: max(8px, env(safe-area-inset-top, 0px)) 10px max(8px, env(safe-area-inset-bottom, 0px)) !important;
  overflow: hidden !important;
  align-items: center !important;
}
body.intro-screen-active .intro-card {
  width: min(100%, 760px) !important;
  height: min(100%, calc(100dvh - 18px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px))) !important;
  max-height: calc(100dvh - 18px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto auto auto !important;
  gap: clamp(6px, 1.15dvh, 14px) !important;
  padding: clamp(14px, 2.2dvh, 30px) clamp(18px, 4vw, 38px) !important;
  overflow: hidden !important;
}
body.intro-screen-active .brand-center {
  gap: clamp(3px, .65dvh, 8px) !important;
}
body.intro-screen-active .brand-center img {
  width: clamp(74px, 10dvh, 132px) !important;
  max-height: 13dvh !important;
  object-fit: contain !important;
}
body.intro-screen-active .brand-center strong {
  font-size: clamp(1.55rem, 4.8vw, 2.75rem) !important;
  line-height: 1 !important;
}
body.intro-screen-active .brand-center span {
  font-size: clamp(.86rem, 2.2vw, 1.05rem) !important;
  line-height: 1.2 !important;
}
body.intro-screen-active .intro-art {
  min-height: 0 !important;
  margin: 0 auto !important;
  align-self: center !important;
  overflow: hidden !important;
}
body.intro-screen-active .intro-art img {
  width: min(100%, 620px) !important;
  max-height: clamp(150px, 30dvh, 320px) !important;
  object-fit: contain !important;
}
body.intro-screen-active .intro-copy h2 {
  font-size: clamp(1.9rem, 6.7vw, 3.65rem) !important;
  line-height: 1.02 !important;
}
body.intro-screen-active .intro-copy p {
  margin-top: clamp(6px, .9dvh, 14px) !important;
  font-size: clamp(.96rem, 2.8vw, 1.25rem) !important;
  line-height: 1.36 !important;
  max-width: 36ch !important;
}
body.intro-screen-active .actions {
  gap: clamp(7px, 1dvh, 13px) !important;
  margin-top: 0 !important;
}
body.intro-screen-active .actions button {
  min-height: 48px !important;
  padding: clamp(11px, 1.7dvh, 16px) 18px !important;
}
body.intro-screen-active .progress {
  margin-top: 0 !important;
}

/* Extra-short browser viewports: keep the complete first page visible. */
@media (max-height: 760px) {
  body.intro-screen-active .intro-card {
    gap: 6px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  body.intro-screen-active .brand-center img {
    width: 70px !important;
    max-height: 10dvh !important;
  }
  body.intro-screen-active .brand-center strong {
    font-size: clamp(1.35rem, 4.5vw, 2rem) !important;
  }
  body.intro-screen-active .intro-art img {
    max-height: 23dvh !important;
  }
  body.intro-screen-active .intro-copy h2 {
    font-size: clamp(1.65rem, 5.7vw, 2.7rem) !important;
  }
  body.intro-screen-active .intro-copy p {
    font-size: clamp(.86rem, 2.4vw, 1.02rem) !important;
    line-height: 1.28 !important;
  }
  body.intro-screen-active .actions button {
    min-height: 44px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  body.intro-screen-active .ghost {
    display: none !important;
  }
}

/* Choose screen: no taskbar guard; let content scroll naturally if the phone browser
   viewport is short, but never create the artificial white block. */
body.chooser-screen-active {
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
body.chooser-screen-active .main {
  height: auto !important;
  max-height: none !important;
  min-height: 100dvh !important;
  padding: 8px 10px 18px !important;
  overflow: visible !important;
}
body.chooser-screen-active .screen {
  height: auto !important;
  max-height: none !important;
  min-height: 100dvh !important;
  padding: 0 0 18px !important;
  overflow: visible !important;
}
body.chooser-screen-active .onboarding-shell {
  min-height: 100dvh !important;
  height: auto !important;
  padding: 10px 0 18px !important;
  align-items: start !important;
}
body.chooser-screen-active .intro-card {
  max-height: none !important;
  overflow: visible !important;
}
body.chooser-screen-active .actions {
  margin-bottom: 0 !important;
}

/* Tablet landscape / wide view: make the Welcome card breathe without cutting content. */
@media (min-width: 768px) and (min-height: 800px) {
  body.intro-screen-active .intro-card {
    width: min(92vw, 860px) !important;
  }
  body.intro-screen-active .intro-art img {
    max-height: 34dvh !important;
  }
}


/* TARTARUGA v5.7 — scientific intro copy fix */
.intro-copy-no-slogan {
  margin-top: 4px !important;
}
.intro-copy-no-slogan p {
  max-width: 38ch !important;
  font-size: clamp(1.08rem, 3.4vw, 1.38rem) !important;
  margin-top: 0 !important;
}
body.intro-screen-active .intro-card {
  gap: clamp(12px, 2.5vh, 22px) !important;
}


/* TARTARUGA v5.8 — weather, effort and saved dropdown polish */

/* The chooser headline is a step label, not a main scientific title. */
body.chooser-screen-active .intro-copy h2,
.intro-copy.choose-copy h2 {
  font-size: clamp(1.9rem, 7.2vw, 3rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -.045em !important;
  max-width: 12ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Compact GPS + weather controls */
.location-tools {
  margin: 0 !important;
}
.location-tool-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
  width: 100%;
}
.mini-tool-btn,
.get-gps-btn,
.fetch-weather-btn {
  min-height: 54px !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0,1fr) !important;
  gap: 9px !important;
  align-items: center !important;
  text-align: left !important;
  padding: 8px 10px !important;
  border-radius: 16px !important;
  background: #f2fbfc !important;
  overflow: hidden !important;
}
.mini-tool-btn .button-icon,
.get-gps-btn .button-icon,
.fetch-weather-btn .button-icon {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  border-radius: 999px !important;
  background: #dff3f7 !important;
  color: var(--teal) !important;
}
.mini-tool-btn .button-icon svg,
.get-gps-btn .button-icon svg,
.fetch-weather-btn .button-icon svg {
  width: 22px !important;
  height: 22px !important;
}
.gps-btn-copy {
  min-width: 0 !important;
  display: grid !important;
  gap: 1px !important;
}
.gps-btn-copy b {
  font-size: .98rem !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.gps-btn-copy small {
  color: var(--muted) !important;
  font-size: .78rem !important;
  line-height: 1.15 !important;
  font-weight: 650 !important;
  white-space: normal !important;
}
.gps-status {
  margin: 6px 2px 0 !important;
  font-size: .84rem !important;
  color: var(--muted) !important;
}

/* Datalist inputs should feel intentional and still fit mobile. */
input[list] {
  background-image: linear-gradient(45deg, transparent 50%, var(--teal) 50%), linear-gradient(135deg, var(--teal) 50%, transparent 50%);
  background-position: calc(100% - 18px) 50%, calc(100% - 12px) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 34px !important;
}

/* Effort settings form should not create huge buttons. */
#settingsForm .primary {
  min-height: 56px !important;
  border-radius: 18px !important;
}

/* On very small screens stack GPS/weather buttons. */
@media(max-width: 390px) {
  .location-tool-row {
    grid-template-columns: 1fr;
  }
}

/* Desktop: keep these controls neat in wide forms. */
@media(min-width: 1000px) {
  .location-tool-row {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
    max-width: 680px;
  }
}


/* TARTARUGA v5.9 — EMI species normalization + tappable record details */
.record-open-row {
  width: 100%;
  font: inherit;
  cursor: pointer;
  text-align: left;
  color: inherit;
  appearance: none;
}
.record-open-row:hover,
.record-open-row:focus-visible {
  border-color: var(--teal) !important;
  box-shadow: 0 10px 24px rgba(8,127,152,.12) !important;
  outline: none;
}
.record-detail-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: end center;
  padding: 16px;
}
.record-detail-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(5, 36, 45, .32);
  backdrop-filter: blur(4px);
}
.record-detail-card {
  position: relative;
  z-index: 1;
  width: min(100%, 760px);
  max-height: min(82dvh, 840px);
  overflow: auto;
  border-radius: 28px;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 28px 70px rgba(6,40,48,.25);
  padding: 18px;
}
.record-detail-card header {
  display: grid;
  grid-template-columns: minmax(0,1fr) 46px;
  gap: 12px;
  align-items: start;
  margin-bottom: 14px;
}
.record-detail-card h2 {
  margin: 0;
  color: var(--teal);
  font-size: clamp(1.8rem, 7vw, 2.8rem);
  line-height: 1;
  letter-spacing: -.055em;
}
.record-detail-card p {
  margin: 8px 0 0;
  color: var(--muted);
  line-height: 1.35;
}
.detail-close {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #f7fcfd;
  color: var(--teal);
  font-size: 1.7rem;
  line-height: 1;
  display: grid;
  place-items: center;
}
.detail-grid {
  display: grid;
  gap: 8px;
}
.detail-row {
  display: grid;
  grid-template-columns: minmax(110px, 32%) minmax(0,1fr);
  gap: 12px;
  align-items: start;
  border: 1px solid #e3f0f3;
  border-radius: 14px;
  padding: 10px 12px;
  background: #fbfeff;
}
.detail-row span {
  color: #78909a;
  text-transform: uppercase;
  font-size: .72rem;
  letter-spacing: .08em;
  font-weight: 900;
}
.detail-row strong {
  color: var(--ink);
  font-weight: 700;
  overflow-wrap: anywhere;
}
.record-detail-card footer {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin-top: 16px;
}
.record-detail-card footer button {
  min-width: 130px;
}
body.record-detail-open {
  overflow: hidden;
}
@media(min-width:900px){
  .record-detail-modal {
    place-items: center;
  }
}
@media(max-width:430px){
  .record-detail-modal {
    padding: 10px;
  }
  .record-detail-card {
    max-height: 86dvh;
    border-radius: 24px;
  }
  .detail-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .record-detail-card footer {
    display: grid;
    grid-template-columns: 1fr;
  }
}


/* TARTARUGA v5.10 — Data hub rescue */
.datahub-hero .hero-actions,
.datahub-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}
.datahub-actions button {
  flex: 1 1 180px !important;
  min-width: 0 !important;
}
.datahub-kpis article span svg {
  width: 30px;
  height: 30px;
}
.datahub-grid {
  align-items: start;
}
.file-drop {
  display: grid;
  gap: 8px;
  border: 1.5px dashed var(--line);
  border-radius: 20px;
  background: #f7fcfd;
  padding: 16px;
  color: var(--teal);
}
.file-drop input {
  width: 100%;
  border: 0;
  padding: 0;
  background: transparent;
  color: var(--ink);
}
.file-drop strong {
  display: block;
  color: var(--teal);
  font-size: 1.08rem;
}
.file-drop small {
  display: block;
  color: var(--muted);
  overflow-wrap: anywhere;
}
.table-note {
  margin: 12px 4px 0 !important;
  color: var(--muted) !important;
  font-size: .92rem !important;
}
.datahub-error {
  max-width: 760px;
  margin: 0 auto;
}
@media(min-width:1000px){
  .datahub-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .effort-card {
    grid-column: span 1 !important;
  }
}
@media(max-width:760px){
  .datahub-kpis {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
}


/* TARTARUGA v5.12 — iOS input dock guard + explicit Add lookup buttons */

/* Hide the bottom taskbar while typing/selecting on iPhone/iPad.
   A fixed bottom dock cannot be stable while Safari/keyboard/autofill is resizing the visual viewport. */
body.input-active .tabbar,
body.keyboard-open .tabbar {
  display: none !important;
}
body.input-active::after,
body.keyboard-open::after {
  display: none !important;
}
body.input-active .main,
body.keyboard-open .main,
body.input-active .screen,
body.keyboard-open .screen {
  padding-bottom: 28px !important;
}

/* Explicit Add observer / Add region / Add location controls */
.lookup-field {
  position: relative;
}
.lookup-field input {
  padding-right: 36px !important;
}
.lookup-add-btn {
  margin-top: 8px;
  width: 100%;
  min-height: 42px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: #eef9fb;
  color: var(--teal);
  font-weight: 850;
  font-size: .92rem;
  display: grid;
  place-items: center;
  padding: 8px 10px;
}
.lookup-add-btn:active {
  transform: translateY(1px);
}
.lookup-status {
  display: block;
  min-height: 1.1em;
  margin-top: 5px;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.2;
}
@media(min-width: 760px) {
  .lookup-field {
    display: grid;
    grid-template-columns: 1fr auto;
    column-gap: 10px;
    align-items: end;
  }
  .lookup-field label {
    grid-column: 1 / -1;
  }
  .lookup-field input {
    grid-column: 1 / 2;
  }
  .lookup-field datalist {
    display: none;
  }
  .lookup-add-btn {
    grid-column: 2 / 3;
    width: auto;
    min-width: 132px;
    margin-top: 0;
    min-height: 52px;
  }
  .lookup-status {
    grid-column: 1 / -1;
  }
}
@media(max-width: 430px) {
  .lookup-add-btn {
    min-height: 40px;
    font-size: .88rem;
  }
}
