/* Theme colors affect shop branding; service logos and workflow status colors retain their meaning. */
:root{--theme-primary:#087448;--theme-hover:#055b38;--theme-on-primary:#fff;--theme-on-hover:#fff;--theme-text:#087448;--theme-soft:#eaf6ef;--theme-border:#c9dfd2;--theme-ink:#203c34;--theme-deep:#203445;--theme-background:#f5f8f7}
.primary{background:var(--theme-primary);color:var(--theme-on-primary)}.primary:hover:not(:disabled){background:var(--theme-hover);color:var(--theme-on-hover)}.steps li[aria-current] span,.mini-icon{background:var(--theme-primary);color:var(--theme-on-primary)}.summary{border-color:var(--theme-border)}
[data-shop-logo]{object-fit:contain;flex-shrink:0}.brand{min-width:0}.brand [data-shop-name]{max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.6px}.shop-label strong{overflow-wrap:anywhere}.shop-label>div{min-width:0}.admin-sidebar .brand [data-shop-name]{max-width:135px;font-size:24px}.admin-sidebar{background:var(--theme-deep)}.admin-sidebar nav a[aria-current]{background:var(--theme-soft);color:var(--theme-text)}.admin-sidebar nav a[aria-current] .nav-count{background:var(--theme-border)}.shop-avatar{background:var(--theme-soft);color:var(--theme-text)}.operator-avatar{background:var(--theme-soft);color:var(--theme-text)}
.contact-page{background:var(--theme-background)}.contact-intro h1{color:var(--theme-ink)}.contact-tag{color:var(--theme-text)}.contact-ticket{background:var(--theme-soft);border-color:var(--theme-border);color:var(--theme-ink);box-shadow:7px 8px 0 var(--theme-border)}.ticket-top{border-color:var(--theme-border)}.ticket-bottom{background:var(--theme-border)}.ticket-bottom svg{color:var(--theme-text)}.ticket-code>span,.ticket-code strong span,.ticket-bottom p{color:var(--theme-ink)}.contact-card.shop{--channel-color:var(--theme-text);--channel-tint:var(--theme-soft)}.contact-help strong{color:var(--theme-text)}.contact-help li{border-color:var(--theme-border)}.contact-preview-icon,.contact-admin-mark.shop{background:var(--theme-soft);color:var(--theme-text)}
[data-home-headline],[data-home-description],.appearance-preview h3,.appearance-preview p{overflow-wrap:anywhere}
@media(max-width:600px){.brand [data-shop-name]{max-width:110px;font-size:23px}.contact-ticket{box-shadow:none}.header{gap:10px}.header-right{gap:12px}}

/* Reserve logo space while the first visit waits for shop settings. */
[data-shop-logo]:not([src]){visibility:hidden}
