/* HermesFarm — approved White & Orange system (concept A, 2026-09-29).
   Shared public/admin surface tokens, including dialogs portalled to body. */
body:has(.hf-site, .hf-admin),.hf-site,.hf-admin{
 color-scheme:light;--bg-base:#fafaf8;--bg-page:#fafaf8;--bg-card:#ffffff;--bg-elevated:#f2f4ef;--border-color:#e2e6de;
 --text-primary:#292e2b;--text-secondary:#626e64;--text-tertiary:#68736a;--text-on-brand:#ffffff;
 --brand-orange:#e86b28;--brand-amber:#b94c16;--brand-gold:#b94c16;--brand-deep:#934018;--brand-leaf:#52745a;--primary:#c45119;
 --color-primary-400:#a64112;--color-primary-500:#b94c16;--color-primary-600:#a64112;
 --color-success:#377149;--color-error:#bd3737;--color-warning:#966117;--color-info:#28629b;
 --grad-brand:#c45119;--grad-brand-hover:#ac4212;--grad-gold:#c45119;--grad-gold-hover:#ac4212;
 --grad-brand-soft:#fff0e5;--grad-brand-text:linear-gradient(#ed702d,#ed702d);
 --surface-raised:#ffffff;--surface-sunken:#f4f6f1;--surface-glass:#ffffff;
 --hairline-top:inset 0 0 0 transparent;--hairline-brand:inset 0 0 0 transparent;
 --glow-brand:0 0 0 transparent;--glow-brand-strong:0 0 0 transparent;--shadow-glow:0 0 0 transparent;--shadow-glow-strong:0 0 0 transparent;--ring-brand:0 0 0 3px #ed702d28;
 --white-subtle:#293a2905;--white-faint:#293a290a;--white-muted:#293a2910;--white-soft:#293a2918;--white-medium:#293a2926;--white-strong:#293a2940;--white-bold:#293a2970;
 --radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--control-hover:#e9ede5;
 --site-header-bg:#ffffffed;--site-menu-bg:#ffffff;
 background:var(--bg-base);color:var(--text-primary)
}
.hf-site-main{position:relative;min-width:0;background:var(--bg-page)!important}.hf-site-main :is(h1,h2,h3){text-wrap:balance;word-break:keep-all}.hf-site-main :is(p,li,td){overflow-wrap:anywhere}
.hf-site-main :is(button,[role="button"],a,input,select,textarea):focus-visible,.hf-site-header :is(button,a):focus-visible{outline:2px solid var(--brand-amber);outline-offset:3px}.hf-site-main :is(input,select,textarea){accent-color:var(--brand-amber)}.hf-site-main :is(input,select,textarea)::placeholder{color:var(--text-tertiary);opacity:1}.hf-site-main :is(button,a){-webkit-tap-highlight-color:#ed702d20}.hf-site-main :is(button,[role="button"]):disabled{cursor:not-allowed}
.hf-primary-nav{display:flex;align-items:center;justify-content:center;gap:5px;margin:auto;min-width:0}.hf-primary-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 13px;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:500;white-space:nowrap;transition:color .16s}.hf-primary-nav a:hover,.hf-primary-nav a.active{color:var(--brand-amber)}.hf-primary-nav a.active{font-weight:700}
.hf-site-header{box-shadow:none}.hf-site-menu{scrollbar-color:#bdc7b7 #f5f7f2;scrollbar-width:thin;box-shadow:0 16px 28px #24332109}.hf-site-main .container{max-width:1200px}.hf-site ::selection{background:#ffdfc4;color:#402710}
.hf-site .hf-brand-button,.hf-site .hf-ui-button{border-radius:12px!important;box-shadow:none!important}.hf-site .hf-brand-sheen{display:none}
.hf-page-header{display:flex;flex-direction:column;justify-content:center;min-height:145px;padding:24px 0 16px;border:0;border-bottom:1px solid var(--border-color);border-radius:0;background:transparent;box-shadow:none}.hf-page-header h1{max-width:800px;letter-spacing:-.045em!important;font-weight:700!important}.hf-page-header p{max-width:700px;line-height:1.8!important}.hf-page-header :is(a,button){align-self:flex-start;color:var(--text-secondary)!important}
.hf-site-footer{background:#fff!important}.hf-site-footer .hf-install-icon{color:var(--text-primary)}
@media(max-width:767px){.hf-site-main{padding-bottom:env(safe-area-inset-bottom)}.hf-site-main :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){font-size:max(16px,1em)}.hf-site-main :is(button,a,input,select,textarea){touch-action:manipulation}.hf-site-main :is(h1,h2,h3){overflow-wrap:normal}.hf-site-main .container{padding-inline:20px}.hf-site-menu{max-height:calc(100dvh - 60px - env(safe-area-inset-top))}.hf-site .hf-brand-button,.hf-site .hf-ui-button{min-height:44px!important}.hf-page-header{min-height:125px;padding:18px 0}.hf-page-header h1{font-size:28px!important}}
@media(max-width:390px){.hf-site-header img[alt="에르메스팜 홈"]{max-width:125px;height:auto!important}}
@media(prefers-reduced-motion:reduce){.hf-site *,.hf-site *::before,.hf-site *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Both themes use the same spacing, typography and flat component language. */
body:has(.hf-site, .hf-admin),.hf-site,.hf-admin{
 --home-art-surface:#edf2e8;--home-art-label:#ffffffed;--home-icon-surface:#f1f4ed;--home-icon-ink:#5f795c;--home-arrow:#859180;
 --home-map-surface:#edf2e8;--home-map-ink:#48663f;--home-map-muted:#63765d;--home-tag-bg:#fff0e5;--home-tag-ink:#99532f;--home-tag-green-bg:#edf2e8;--home-tag-green-ink:#58724f;
 --map-canvas-bg:#edf2e8;--map-control-bg:#ffffffed;--news-cover-overlay:linear-gradient(90deg,rgba(255,255,255,.99),rgba(255,255,255,.82));
}
html[data-site-theme="dark"] body:has(.hf-site, .hf-admin),html[data-site-theme="dark"] .hf-site,html[data-site-theme="dark"] .hf-admin{
 color-scheme:dark;--bg-base:#191d1b;--bg-page:#191d1b;--bg-card:#222824;--bg-elevated:#2b332d;--border-color:#3c473f;
 --text-primary:#eef2ed;--text-secondary:#bac7bd;--text-tertiary:#a5b5a9;--text-on-brand:#281c14;
 --brand-orange:#ff955b;--brand-amber:#ffae7e;--brand-gold:#ffae7e;--brand-deep:#ffbc97;--brand-leaf:#a3c597;--primary:#f6a16c;
 --color-primary-400:#ffc29d;--color-primary-500:#ffae7e;--color-primary-600:#ff955b;
 --color-success:#91c79b;--color-error:#f39595;--color-warning:#e1bf83;--color-info:#8cbae6;
 --grad-brand:#f6a16c;--grad-brand-hover:#ffb183;--grad-gold:#f6a16c;--grad-gold-hover:#ffb183;--grad-brand-soft:#ff955b16;--grad-brand-text:linear-gradient(#ff955b,#ff955b);
 --surface-raised:#222824;--surface-sunken:#1c231e;--surface-glass:#222824;--control-hover:#354039;
 --white-subtle:#ffffff05;--white-faint:#ffffff0a;--white-muted:#ffffff10;--white-soft:#ffffff18;--white-medium:#ffffff26;--white-strong:#ffffff40;--white-bold:#ffffff70;
 --site-header-bg:#1e2520f5;--site-menu-bg:#222824;
 --home-art-surface:#2a362b;--home-art-label:#252e27ed;--home-icon-surface:#303c2f;--home-icon-ink:#acc79e;--home-arrow:#a1b69b;
 --home-map-surface:#2a362b;--home-map-ink:#bdd6ad;--home-map-muted:#b0c5a9;--home-tag-bg:#493226;--home-tag-ink:#ffc49a;--home-tag-green-bg:#303e2e;--home-tag-green-ink:#b5ceaa;
 --map-canvas-bg:#263128;--map-control-bg:#222824f2;--news-cover-overlay:linear-gradient(90deg,rgba(34,40,36,.99),rgba(34,40,36,.82));
}
.hf-theme-toggle{display:grid;place-items:center;width:40px;height:44px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;flex-shrink:0}.hf-theme-toggle:hover{background:var(--bg-elevated);color:var(--brand-amber)}
.hf-site-footer{background:var(--bg-card)!important}
@media(min-width:768px) and (max-width:1023px){.hf-primary-nav{gap:0}.hf-primary-nav a{padding-inline:8px;font-size:13px}.hf-primary-nav a:last-child{display:none}}
@media(max-width:360px){.hf-theme-toggle{width:36px}.hf-site-header img[alt="에르메스팜 홈"]{max-width:112px}}

/* Explicit contrast pairs; no inline foreground/background overrides. */
.hf-header-charge{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 15px;border:1px solid transparent;border-radius:10px;background:#c45119;color:#fff;text-decoration:none;font:700 14px var(--font-sans);line-height:1.25;white-space:nowrap;box-shadow:none;transition:background .15s}
.hf-header-charge:visited{color:#fff}.hf-header-charge:hover{background:#ac4212;color:#fff}.hf-header-charge svg{flex-shrink:0;stroke:currentColor}
html[data-site-theme="dark"] .hf-header-charge{background:#f6a16c;color:#281c14}
html[data-site-theme="dark"] .hf-header-charge:hover{background:#ffb183;color:#281c14}
@media(max-width:767px){.hf-header-charge{padding:0 11px;font-size:13px;gap:5px}}
/* Keep all header controls reachable on narrow screens, including the signed-in bell. */
@media(max-width:360px){.hf-site-header>div:first-child{padding-left:10px!important;padding-right:10px!important;gap:8px!important}.hf-site-header img[alt="에르메스팜 홈"]{max-width:94px;height:auto!important}}

/* Legacy public controls share the same light/dark surfaces and readable ink. */
body:has(.hf-site, .hf-admin),.hf-site,.hf-admin{--text-muted:var(--text-tertiary);--accent-primary:var(--primary);--modal-backdrop:rgba(32,48,32,.38);--chart-grid:#dfe5dc;--chart-border:#cbd4c7}
html[data-site-theme="dark"] body:has(.hf-site, .hf-admin),html[data-site-theme="dark"] .hf-site,html[data-site-theme="dark"] .hf-admin{--modal-backdrop:rgba(0,0,0,.72);--chart-grid:#354039;--chart-border:#4b584e}
body:has(.hf-site, .hf-admin),.hf-site,.hf-admin{--accent-pink:#a93269;--accent-purple:#7840ab}
html[data-site-theme="dark"] body:has(.hf-site, .hf-admin),html[data-site-theme="dark"] .hf-site,html[data-site-theme="dark"] .hf-admin{--accent-pink:#ffadd1;--accent-purple:#d4a7ff}
body:has(.hf-site, .hf-admin),.hf-site,.hf-admin{--medal-gold:#896410;--medal-silver:#566577;--medal-bronze:#925128}
html[data-site-theme="dark"] body:has(.hf-site, .hf-admin),html[data-site-theme="dark"] .hf-site,html[data-site-theme="dark"] .hf-admin{--medal-gold:#ffd24a;--medal-silver:#d3dbe6;--medal-bronze:#e39b63}

/* Public screens and body-portalled overlays share semantic theme aliases. */
body:has(.hf-site), .hf-site {
 --bg-surface:var(--bg-card); --primary-muted:var(--grad-brand-soft); --primary-faint:var(--grad-brand-soft);
 --text-quaternary:var(--text-tertiary); --color-danger:var(--color-error);
 --color-success-500:var(--color-success); --color-error-500:var(--color-error);
 --modal-backdrop:rgba(41,46,43,.35); --preview-checker-a:#e3e8df; --preview-checker-b:#f6f7f3;
 scrollbar-color:#b9c2b8 var(--bg-base);
}
html[data-site-theme="dark"] body:has(.hf-site), html[data-site-theme="dark"] .hf-site {
 --modal-backdrop:rgba(0,0,0,.65); --preview-checker-a:#303a33; --preview-checker-b:#222824;
 scrollbar-color:#59665d var(--bg-base);
}
.hf-site ::-webkit-scrollbar-track { background:var(--bg-base); }
.hf-site ::-webkit-scrollbar-thumb { background:var(--border-color); }
.hf-site ::-webkit-scrollbar-thumb:hover { background:var(--text-tertiary); }
