/* HANSHOP shared controls: soft corners, quiet slate, visible keyboard focus. */
:root{--hs-control-ink:#273443;--hs-control-muted:#5c6774;--hs-control-accent:#3c556e;--hs-control-on-accent:#fff;--hs-control-focus:#52789e;--hs-control-line:#d5dce4;--hs-control-surface:rgba(255,255,255,.92);--hs-control-hover:#edf2f7;--hs-control-selected:#e4ecf4;--hs-control-radius:16px;--hs-control-popover:22px;--hs-control-shadow:0 12px 34px rgba(31,47,65,.12)}
html[data-hs-admin-theme="dark"]{--hs-control-ink:#edf2f8;--hs-control-muted:#b8c5d2;--hs-control-accent:#b9cde0;--hs-control-on-accent:#162433;--hs-control-focus:#accbe8;--hs-control-line:#435364;--hs-control-surface:rgba(35,45,57,.96);--hs-control-hover:#334353;--hs-control-selected:#35495d}
html[data-hs-admin]{--hs-admin-accent:var(--hs-control-accent);--hs-admin-selected:var(--hs-control-selected);--hs-admin-focus:var(--hs-control-focus);--hs-admin-hover:var(--hs-control-hover)}
html[data-hs-admin] body{--primary:var(--hs-control-accent);--primary-foreground:var(--hs-control-on-accent);--ring:var(--hs-control-focus);--accent:var(--hs-control-selected);--accent-foreground:var(--hs-control-ink);--sidebar-accent:var(--hs-control-selected);--sidebar-accent-foreground:var(--hs-control-accent)}
::selection{background:var(--hs-control-selected)!important;color:var(--hs-control-ink)!important}
:where(input,textarea,select){accent-color:var(--hs-control-accent)!important;caret-color:var(--hs-control-ink)!important}
html body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),textarea,select,[data-slot="select-trigger"],[role="combobox"]){border-radius:var(--hs-control-radius)!important;border-color:var(--hs-control-line)!important;transition:border-color .16s ease,background-color .16s ease;}
html body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea,select,[data-slot="select-trigger"],[role="combobox"]):focus{border-color:var(--hs-control-focus)!important;outline:2px solid var(--hs-control-focus)!important;outline-offset:2px!important;box-shadow:none!important}
html body :is(button,a,[role="button"],[role="checkbox"],[role="tab"],[role="menuitem"],[role="option"]):focus-visible{outline:2px solid var(--hs-control-focus)!important;outline-offset:3px!important;box-shadow:none!important}
html body :is(button,[role="button"],[data-slot="sidebar-menu-button"],[data-slot="sidebar-menu-sub-button"]){border-radius:14px!important;transition:background-color .16s ease,color .16s ease,border-color .16s ease;}
html body :is([data-slot="dropdown-menu-content"],[data-slot="dropdown-menu-sub-content"],[data-slot="select-content"],[data-slot="popover-content"],[data-slot="context-menu-content"],[data-slot="command-dialog"]){border-radius:var(--hs-control-popover)!important;background:var(--hs-control-surface)!important;color:var(--hs-control-ink)!important;border:0!important;box-shadow:var(--hs-control-shadow)!important;padding:8px!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html body :is([data-slot="dropdown-menu-item"],[data-slot="dropdown-menu-checkbox-item"],[data-slot="dropdown-menu-radio-item"],[data-slot="select-item"],[data-slot="context-menu-item"]){border-radius:11px!important;min-height:36px;}
html body :is([data-slot="dropdown-menu-item"],[data-slot="select-item"],[data-slot="dropdown-menu-checkbox-item"],[data-slot="dropdown-menu-radio-item"])[data-highlighted]{background:var(--hs-control-hover)!important;color:var(--hs-control-ink)!important}
html body :is(dialog,[data-slot="dialog-content"],[data-slot="alert-dialog-content"],.member-body,.glass-panel,.desk-panel,.mobile-search-panel){border-radius:24px!important;}
html body :is([data-slot="tabs-list"],.tabs,.filters){border-radius:18px!important}
html body :is([data-slot="tabs-trigger"],.tabs button,.filters button){border-radius:14px!important}
html body :is([data-slot="tabs-trigger"][data-state="active"],.tabs button[aria-pressed="true"],.filters button[aria-pressed="true"],.filters .active){background:var(--hs-control-surface)!important;color:var(--hs-control-accent)!important;box-shadow:0 2px 7px rgba(31,47,65,.08)!important}
html body :is(.hs-page-number[aria-current="page"],button[type="submit"]:not(.danger-solid),.member-submit,.primary,#member-flow-submit){background:var(--hs-control-accent)!important;color:var(--hs-control-on-accent)!important;border-color:transparent!important}
html body :is(.hs-page-number,.member-entry,.header nav a,.header .search,.mobile-search,.hero-cta,.rail-controls button,.glass-launcher,.desk-launch,.mobile-bottom-nav button,.mobile-bottom-nav a){border-radius:18px!important}
html body :is(.member-entry,.hero-cta,.rail-controls button,.glass-launcher,.desk-launch){color:var(--hs-control-ink)!important;}
html body :is(.header .search,.mobile-search):focus-within{outline:2px solid var(--hs-control-focus);outline-offset:2px;border-color:var(--hs-control-focus)!important}
html body .header .search input:focus{outline:0!important;border-color:transparent!important}
html body :is(.brand[aria-pressed="true"] .brand-ring,.brand.active .brand-ring,.avatar-option[aria-pressed="true"],.system-avatar-option[aria-pressed="true"]){border-color:var(--hs-control-focus)!important;outline-color:var(--hs-control-focus)!important;box-shadow:0 3px 12px rgba(31,47,65,.1)!important}
html body :is(.saved[aria-pressed="true"],.save[aria-pressed="true"],.favorite[aria-pressed="true"],.desk-pin[aria-pressed="true"],#detail-shop){color:var(--hs-control-accent)!important}
html body :is(.hs-custom-page-size button,.hs-page-jump button,.hs-workspace-tools button,.row-actions button,.secondary){border-radius:14px!important;}
html body :is(.hs-page-number:hover,.tabs button:hover,.member-entry:hover){background:var(--hs-control-hover)!important;color:var(--hs-control-accent)!important}
html body .hs-page-number[aria-current="page"]:hover{background:var(--hs-control-accent)!important;color:var(--hs-control-on-accent)!important}
html body :is(.hs-auth-card input,.member-body input:not([type="checkbox"]),#editor input:not([type="checkbox"])){background:var(--hs-control-surface)!important;color:var(--hs-control-ink)!important;}
html body :is(button:disabled,input:disabled,select:disabled){cursor:not-allowed!important}
html body :is(.hs-auth-card button[type="submit"],.member-submit,#save:not(.danger-solid)):hover:not(:disabled){filter:brightness(.93)}
html body input[aria-invalid="true"]{border-color:#ad4651!important}
html body :is(.danger-text,.danger-solid){border-radius:14px!important}
html body :is(.check input,.member-consent input){accent-color:var(--hs-control-accent)!important}
html[data-hs-admin] [data-slot="badge"]:not([data-variant="destructive"]){background:var(--hs-control-selected);color:var(--hs-control-accent)}
@media(hover:hover){html body :is(button,[role="button"]):active:not(:disabled){filter:brightness(.96)}}
@media(max-width:767px){html body :is([data-slot="dropdown-menu-item"],[data-slot="select-item"]){min-height:44px}html body :is(.hs-custom-page-size button,.hs-page-jump button,.row-actions button){min-height:44px}}
@media(prefers-reduced-motion:reduce){html body :is(button,input,textarea,select,a){transition:none!important}}
@media(forced-colors:active){html body :is(button,input,a):focus-visible{outline:2px solid Highlight!important}html body [aria-current="page"]{border:2px solid Highlight!important}}

html body :is(#hs-account-link,#hs-upgrade-link){border-radius:16px!important;border-color:var(--hs-control-line)!important;color:var(--hs-control-ink)!important}html body :is(#hs-account-link,#hs-upgrade-link):hover{background:var(--hs-control-hover)}

/* Search is a single control: focus belongs to its outer glass shell. */
html body .header label.search{border-radius:22px!important;border:1px solid rgba(118,137,154,.18)!important;transition:border-color .15s,box-shadow .15s}
html body .header label.search:focus-within{outline:none!important;border-color:rgba(82,120,158,.55)!important;box-shadow:0 0 0 3px rgba(82,120,158,.12)!important}
html body .header label.search #search,html body .header label.search #search:focus,html body .header label.search #search:focus-visible{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;padding:0!important;min-height:0!important;color:#273443!important;appearance:none}
html body .header label.search kbd{border:0!important;background:transparent!important;box-shadow:none!important;opacity:.55}

html body #mobile-search-panel .mobile-search-shell{display:flex;align-items:center;gap:10px;padding:12px 16px;margin:8px 0 18px;min-height:48px;border:1px solid rgba(118,137,154,.18);border-radius:22px;background:var(--glass-readable,rgba(255,255,255,.86));backdrop-filter:blur(var(--glass-effective-blur,8px));-webkit-backdrop-filter:blur(var(--glass-effective-blur,8px));transition:border-color .15s,box-shadow .15s}
html body #mobile-search-panel .mobile-search-shell:focus-within{border-color:rgba(82,120,158,.55);box-shadow:0 0 0 3px rgba(82,120,158,.12);outline:none}
html body #mobile-search-panel .mobile-search-shell svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:#536575;stroke-width:1.7}
html body #mobile-search-panel #mobile-search-query,html body #mobile-search-panel #mobile-search-query:focus,html body #mobile-search-panel #mobile-search-query:focus-visible{flex:1;width:0;min-width:0;min-height:0;margin:0;padding:0!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;color:#273443;font:inherit;font-size:16px;line-height:1.4}
html body #mobile-search-panel #mobile-search-query::placeholder{color:#65666e;opacity:1}

@media(max-width:720px){
html body dialog#mobile-search-panel[open]{display:flex;align-items:center;gap:8px;inset:auto 14px calc(88px + env(safe-area-inset-bottom));width:calc(100vw - 28px);max-width:460px;min-height:60px;padding:8px 10px;margin:0 auto;border:1px solid rgba(118,137,154,.18);border-radius:24px!important;background:var(--glass-readable,rgba(255,255,255,.9));box-shadow:0 8px 24px rgba(31,47,65,.14);overflow:visible}
html body #mobile-search-panel h2,html body #mobile-search-panel>label,html body #mobile-search-close{display:none!important}
html body #mobile-search-panel .mobile-search-shell{flex:1;min-width:0;margin:0;padding:10px 8px;min-height:42px;border:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none!important}
html body #mobile-search-panel:focus-within{border-color:rgba(82,120,158,.55);box-shadow:0 0 0 3px rgba(82,120,158,.1),0 8px 24px rgba(31,47,65,.14)}
html body #mobile-search-panel .search-actions{display:flex;flex-shrink:0;gap:0}
html body #mobile-search-panel #mobile-search-results{width:40px;min-width:40px;height:40px;min-height:40px;padding:0;border-radius:50%!important;font-size:0;background:#e4ecf4!important;color:#334d63!important}
html body #mobile-search-panel #mobile-search-results::before{content:'→';font-size:22px;line-height:1}
html body #mobile-search-panel::backdrop{background:rgba(30,40,55,.06);backdrop-filter:none;-webkit-backdrop-filter:none}
}

@media(max-width:720px){html body dialog#mobile-search-panel[open]{bottom:var(--search-keyboard-bottom,calc(88px + env(safe-area-inset-bottom)))!important;scroll-margin-bottom:12px}}

/* Stable mobile editor: prevent page motion behind the focused input. */
@media(max-width:720px){html.hs-search-editing{overflow:hidden;overscroll-behavior:none}html.hs-search-editing body{overflow:hidden;overscroll-behavior:none}html body dialog#mobile-search-panel[open]{transform:none!important;animation:none!important;transition:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html body #mobile-search-query{caret-color:#334d63;transform:none!important;animation:none!important;transition:none!important}}

@media(max-width:720px){html body dialog#mobile-search-panel[open]{top:calc(16px + env(safe-area-inset-top))!important;bottom:auto!important;max-height:none!important}html body #mobile-search-close{display:flex!important;align-items:center;justify-content:center;width:36px;min-width:36px;height:40px;min-height:40px;padding:0;font-size:0;background:transparent!important;color:#687786!important}html body #mobile-search-close::before{content:'×';font-size:24px}html body #mobile-search-panel .search-actions{gap:2px}}

/* Mobile uses the same persistent search field as desktop, not a dialog. */
@media(max-width:720px){html body .header{position:relative;top:auto;height:auto;min-height:50px;flex-wrap:wrap;gap:12px;padding:12px 14px;margin:8px auto 16px}html body .header label.search{display:flex!important;order:10;flex:0 0 100%;width:100%;max-width:none;min-height:46px;padding:10px 14px;box-sizing:border-box;background:var(--glass-readable,rgba(255,255,255,.86));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}html body .header .search input{font-size:16px!important;width:100%;min-width:0}html body .header .search kbd{display:none}html body dialog#mobile-search-panel{display:none!important}}

.mobile-header-logo{display:none}
@media(max-width:720px){html{scroll-padding-top:92px}html body .header{position:sticky;top:calc(6px + env(safe-area-inset-top));z-index:45;display:flex;flex-wrap:nowrap;gap:10px;height:64px;min-height:64px;width:calc(100% - 24px);margin:6px auto 14px;padding:8px 10px;border:1px solid rgba(255,255,255,.65);border-radius:24px;background:rgba(255,255,255,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 5px 20px rgba(35,53,70,.08)}html body .header::after{display:none}html body .header .wordmark{display:flex;flex:0 0 40px;width:40px;min-width:40px;margin:0}html body .header .desktop-header-wordmark{display:none}html body .header .mobile-header-logo{display:block;width:40px;height:40px;border-radius:12px;object-fit:contain}html body .header label.search{order:0;flex:1 1 0;width:auto;min-width:0;margin:0;min-height:44px;padding:9px 12px;border-radius:18px!important}html body .mobile-dock :is(a,button){flex:1;min-width:0;padding:6px 3px;font-size:10px;gap:4px}html body .mobile-dock svg{width:21px;height:21px}html body .mobile-dock{padding:0 5px}}

html body .header .wordmark>.desktop-header-wordmark{font-size:inherit;vertical-align:baseline;letter-spacing:inherit}html body .header .desktop-header-wordmark>span{font-size:12px;vertical-align:super}
