.top,.nav,.nav.scrolled,.nav.is-scrolled,.nav.nav-scrolled,.nav[data-scrolled="true"]{background:#124f35!important;background-image:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.menu-toggle{display:none;min-width:104px;height:46px;padding:0 15px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(255,255,255,.1);color:#fff;cursor:pointer;align-items:center;justify-content:center;gap:10px;font:inherit;font-size:.86rem;font-weight:700}
.menu-toggle-label{line-height:1}
.menu-toggle-lines,.menu-toggle-lines::before,.menu-toggle-lines::after{display:block;width:21px;height:2px;border-radius:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.menu-toggle-lines{position:relative}.menu-toggle-lines::before,.menu-toggle-lines::after{content:"";position:absolute;left:0}.menu-toggle-lines::before{top:-7px}.menu-toggle-lines::after{top:7px}
.menu-toggle[aria-expanded="true"] .menu-toggle-lines{background:transparent}.menu-toggle[aria-expanded="true"] .menu-toggle-lines::before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-toggle-lines::after{top:0;transform:rotate(-45deg)}
.account-actions .logout{margin:0}.account-actions .logout button{display:flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border:1px solid #bfd0c4;border-radius:999px;background:#e3ede4;color:#124f35;font:inherit;font-size:.78rem;font-weight:700;white-space:nowrap;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}@media(hover:hover){.account-actions .logout button:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(5,28,17,.22)}}
.admin-navlinks>.admin-nav-more{display:block!important;visibility:visible!important;flex:0 0 auto;min-width:max-content;opacity:1!important}
.admin-navlinks>.admin-nav-more>summary{display:block!important;visibility:visible!important;min-width:max-content;color:#fff;opacity:1!important}
.account-actions>.admin-tools-menu{display:block!important;visibility:visible!important;position:relative;flex:0 0 auto;min-width:max-content;opacity:1!important}
.account-actions>.admin-tools-menu>summary.button{display:inline-flex!important;visibility:visible!important;min-width:72px;min-height:38px!important;padding:0 13px!important;color:#124f35!important;font-size:.78rem;opacity:1!important}
.account-actions>.admin-tools-menu>.nav-more-links{right:auto;left:0;max-height:min(70vh,620px);overflow:auto}
.admin-navlinks{gap:18px!important}
.account-actions{gap:9px!important}

/* FreshFarm uses colour, weight, shape and focus outlines—not underlines—to identify links. */
html body a,
html body a:hover,
html body a:focus-visible,
html body a:active,
html body a:visited{text-decoration:none!important}
html body a:focus-visible{outline:3px solid #d9f45f;outline-offset:3px}

/* Keep long links, tokens and references inside the card or column that owns them. */
html body :where(.panel,.note,.row,.field,.list,.grid,.actions,.nav-more-links)>*{min-width:0;max-width:100%}
html body :where(a,p,li,td,th,dd,code,pre,.note,.muted){max-width:100%;overflow-wrap:anywhere;word-break:normal}
html body pre{white-space:pre-wrap}

/* Universal containment: every component must size its contents inside its own box. */
html body :where(main,section,article,aside,header,footer,nav,div,form,fieldset,details,summary,figure,figcaption,table,tbody,tr,td,th){min-width:0}
html body :where(.wrap,.panel,.note,.row,.field,.list,.grid,.actions,.heading,.review,.card,.tile,.hero,.nav-more-links,.app-footer-inner,.app-footer-bottom){max-width:100%}
html body :where(h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,small,strong,em,span,a,code,pre,blockquote,figcaption){min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal}
html body :where(img,picture,svg,video,canvas,iframe){max-width:100%;height:auto}
html body :where(input:not([type=checkbox]):not([type=radio]),select,textarea,button,.button){min-width:0;max-width:100%}
html body :where(.grid)>*{min-width:0;max-width:100%}
html body :where(.actions,.row,.review,.heading){min-width:0;max-width:100%}
html body :where(.actions,.row,.review,.heading)>*{min-width:0;max-width:100%}
html body :where(label:has(>input[type=checkbox]),label:has(>input[type=radio])){display:grid!important;grid-template-columns:20px minmax(0,1fr);align-items:start!important;gap:10px!important;width:100%;max-width:100%;white-space:normal}
html body :where(label:has(>input[type=checkbox]),label:has(>input[type=radio]))>input{grid-column:1!important;width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;margin:1px 0 0!important;padding:0!important}
html body :where(table){display:block;width:100%;max-width:100%;overflow-x:auto}
html body :where(pre,code){white-space:pre-wrap}
@media(min-width:1451px){
  .nav{width:min(1680px,calc(100% - 48px));justify-content:flex-start;gap:24px;padding:14px 0}
  .nav>.brand{flex:0 0 auto;margin-right:6px}
  .nav>.navlinks{flex:1 1 auto;min-width:0;justify-content:flex-start;gap:clamp(16px,1.15vw,24px)}
  .nav>.navlinks>a,.nav>.navlinks>.nav-more>summary{white-space:nowrap}
  .nav>.account-actions{flex:0 0 auto;margin-left:auto!important;gap:10px!important}
}
@media(max-width:1450px){
  .nav{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 0}.menu-toggle{display:inline-flex;flex:0 0 auto}
  .nav>.account-actions{display:none!important}
  .nav .nav-links,.nav .links,.nav .navlinks{display:none!important;position:absolute;z-index:250;top:calc(100% + 10px);right:0;left:auto;width:min(380px,calc(100vw - 28px));max-height:calc(100vh - 96px);overflow:auto;flex-direction:column;align-items:stretch;gap:3px!important;padding:12px;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:#124f35;box-shadow:0 18px 48px rgba(5,28,17,.32)}
  .nav .nav-links.is-open,.nav .links.is-open,.nav .navlinks.is-open{display:flex!important}
  .nav .nav-link,.nav .link,.nav .navlinks a{display:block!important;width:100%;padding:13px 14px;border:0!important;border-radius:11px;color:#fff;font-size:.92rem;line-height:1.25;white-space:normal;text-align:left;text-decoration:none}
  .nav .nav-join,.nav .nav-app,.nav .app{display:flex!important;align-items:center;justify-content:center;text-align:center!important;line-height:1.2}
  .nav .nav-link:hover,.nav .link:hover,.nav .navlinks a:hover{background:rgba(255,255,255,.09)}
  .nav .nav-app,.nav .app{margin-top:5px;background:#d9f45f!important;color:#124f35!important;text-align:center!important}
  .nav .navlinks form{display:block;width:100%;padding:4px}.nav .navlinks .logout button{width:100%;min-height:48px;padding:0 14px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:rgba(255,255,255,.09);color:#fff;text-align:center}
  .nav .navlinks .account-actions{display:flex!important;width:100%;margin:8px 0 0!important;padding-top:8px;border-top:1px solid rgba(255,255,255,.14);gap:6px;flex-direction:column}.nav .navlinks .account-actions a{display:flex!important;align-items:center;justify-content:center;min-height:48px!important;background:rgba(255,255,255,.09)!important;color:#fff!important;text-align:center!important}.nav .navlinks .account-actions a.button.light{background:#d9f45f!important;color:#124f35!important}.nav .navlinks .account-actions .logout{padding:0}
  .brand{min-width:0}.brand-logo{flex:0 0 auto}.brand{white-space:nowrap}
}
@media(max-width:480px){.menu-toggle{min-width:46px;width:46px;padding:0}.menu-toggle-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}

/* Controls should read as calm interface copy, not display typography. */
:where(button,.button,[role="button"],.badge,.pill,.nav-sign,.nav-join,.app-footer-join,.map-status-pill,.map-legend span){font-weight:550!important}
