/* Generated from ui/styles/public-buttons.css. Edit the source, then npm run build:styles. */
@import url("./corner-count.css");
/* Canonical public button system for vladislovex.ru and Vocava musician pages.
   Legacy class names are adapters: markup, links and JS hooks stay intact. */
:root {
  --public-button-height: 36px;
  --public-button-large-height: 36px;
  --public-button-compact-height: 36px;
  --public-button-font-size: 15px;
  --public-button-line-height: 24px;
  --public-button-padding: 16px;
  --public-button-radius: var(--ui-radius-control);
  --public-button-weight: var(--ui-font-weight-500);
  --public-button-duration: var(--motion-fast);
}
:where(.button, .ad-button, .rep-button, .ep-button, .ad-pricing__button, .vr-toolbar-button, .vr-song__choice, .offer-download, .vr-sort__text, [data-confirm]) {
  --pb-background: transparent;
  --pb-ink: var(--ui-color-ink);
  --pb-line: var(--ui-color-line);
  --pb-hover-background: var(--ui-color-ink);
  --pb-hover-ink: var(--ui-color-white);
  --pb-hover-line: var(--ui-color-ink);
}
:is(.button, .ad-button, .rep-button, .ep-button, .ad-pricing__button, .vr-toolbar-button, .vr-song__choice, .offer-download, .vr-sort__text, [data-confirm]) {
  box-sizing: border-box;
  display: inline-flex;
  min-width: 0;
  height: var(--public-button-height);
  min-height: var(--public-button-height);
  align-items: center;
  justify-content: center;
  gap: var(--ui-space-8);
  padding: 0 var(--public-button-padding);
  border: 1px solid var(--pb-line);
  border-radius: var(--public-button-radius);
  color: var(--pb-ink);
  background-color: var(--pb-background);
  font-family: var(--ui-font-family);
  font-size: var(--public-button-font-size);
  font-weight: var(--public-button-weight);
  line-height: var(--public-button-line-height);
  letter-spacing: -.015em;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  cursor: pointer;
  appearance: none;
  -webkit-tap-highlight-color: transparent;
  transition: color var(--public-button-duration) ease, background-color var(--public-button-duration) ease, border-color var(--public-button-duration) ease;
}
/* Accent, neutral dark, and inverse actions share identical geometry. */
.button--accent, .ad-button--dark, [data-confirm] {
  --pb-background: var(--ui-color-accent); --pb-ink: var(--ui-color-white); --pb-line: var(--ui-color-accent);
}
.button--accent, .ad-button--dark { background-image: var(--ui-texture-home); background-size:180px 180px; }
.ad-profile__actions .ad-button--dark {
  --public-button-font-size: var(--ui-font-size-16);
  --public-button-radius: var(--ui-radius-card);
  --pb-hover-background: var(--ui-color-accent);
  --pb-hover-line: var(--ui-color-accent);
  background-image: var(--ui-profile-cta-gradient);
  background-size: auto;
  box-shadow: var(--ui-profile-cta-highlight);
}
.button--dark, .rep-button--dark, .ep-button--primary {
  --pb-background: var(--ui-color-ink); --pb-ink: var(--ui-color-white); --pb-line: var(--ui-color-ink);
  --pb-hover-background: var(--ui-color-accent); --pb-hover-line: var(--ui-color-accent);
}
.calculator__actions .button--dark {
  --pb-background: var(--ui-color-white); --pb-ink: var(--ui-color-ink); --pb-line: var(--ui-color-white);
}
.ep-button--quiet, .ad-pricing__button { border:0; border-radius:0; background:transparent; --pb-background:transparent; }
.rep-button--light, .vr-toolbar-button { --pb-background:var(--ui-color-white); border:var(--ui-border-default); border-radius:var(--public-button-radius); background-color:var(--pb-background); }
.button--large { min-height:var(--public-button-large-height); padding-inline:var(--ui-space-32); }
.vr-toolbar-button, .vr-sort__text, .vr-page-number, .vr-pagination .rep-button { min-height:var(--public-button-compact-height); }
.vr-page-number, .vr-sort__icon { width:var(--public-button-compact-height); padding-inline:0; }
.vr-toolbar-button { --pb-hover-background:var(--ui-color-soft); --pb-hover-ink:var(--ui-color-ink); }
.vr-sort__text { --pb-background:var(--ui-color-white); --pb-line:var(--ui-color-line); --pb-hover-line:var(--ui-color-ink); --pb-hover-background:var(--ui-color-soft); --pb-hover-ink:var(--ui-color-ink); padding-inline:var(--public-button-padding); }
.vr-song__choice { width:var(--public-button-compact-height); height:var(--public-button-compact-height); min-height:var(--public-button-compact-height); flex-shrink:0; padding:0;   border: 0; border-radius: 0; background: transparent; --pb-background: transparent; }
.vr-song__choice--like { --pb-hover-ink:var(--rep-like); --pb-hover-line:var(--rep-like); --pb-hover-background:transparent; }
.vr-song__choice--stop { --pb-hover-ink:var(--rep-stop); --pb-hover-line:var(--rep-stop); --pb-hover-background:transparent; }
.offer-download { width:var(--public-button-compact-height); height:var(--public-button-compact-height); min-height:var(--public-button-compact-height); flex:0 0 auto; padding:0; --pb-ink:var(--ui-paint-8838989005); --pb-line:var(--ui-paint-cc42ec5955); --pb-hover-background:var(--ui-color-white); --pb-hover-ink:var(--ui-color-ink); --pb-hover-line:var(--ui-color-white); }
.offer-download--calculator { width:var(--public-button-large-height); height:var(--public-button-large-height); }
/* Fine-pointer hover only: touch taps do not leave sticky visual states. */
@media (hover: hover) {
  :is(.button, .ad-button, .rep-button, .ep-button, .ad-pricing__button, .vr-toolbar-button, .vr-song__choice, .offer-download, .vr-sort__text, [data-confirm]):hover:not(:disabled):not([aria-disabled="true"]):not(.is-disabled) {
    color:var(--pb-hover-ink); background-color:var(--pb-hover-background); border-color:var(--pb-hover-line);
  }
}
:is(.button, .ad-button, .rep-button, .ep-button, .ad-pricing__button, .vr-toolbar-button, .vr-song__choice, .offer-download, .vr-sort__text, [data-confirm]):focus-visible {
  outline:none; border-color:var(--ui-color-accent); text-decoration:underline; text-underline-offset:3px;
}
:is(.button, .ad-button, .rep-button, .ep-button, .ad-pricing__button, .vr-toolbar-button, .vr-song__choice, .offer-download, .vr-sort__text, [data-confirm]):active:not(:disabled):not([aria-disabled="true"]):not(.is-disabled) { filter:brightness(.92); }
:is(.button, .ad-button, .rep-button, .ep-button, .ad-pricing__button, .vr-toolbar-button, .vr-song__choice, .offer-download, .vr-sort__text, [data-confirm]):is(:disabled, [aria-disabled="true"], .is-disabled) { opacity:.45; cursor:not-allowed; }
a:is(.button, .ad-button, .rep-button, .ep-button):is([aria-disabled="true"], .is-disabled) { pointer-events:none; }
:is(.button, .ad-button, .rep-button, .ep-button, .offer-download):is([aria-busy="true"], .is-loading) { cursor:wait; }
.vr-pagination [aria-current="page"] { --pb-background:var(--ui-color-ink); --pb-ink:var(--ui-color-white); --pb-line:var(--ui-color-ink); }
@media (max-width: 760px) {
  :root { --public-button-height:36px; --public-button-large-height:36px; }
  .button--large { padding-inline:var(--ui-space-16); }
  .vr-toolbar-button { padding-inline:var(--ui-space-11); }
  .vr-favorites-toggle, .vr-stop-toggle { width:var(--public-button-compact-height); padding:0; }
}
@media (prefers-reduced-motion: reduce) {
  :is(.button, .ad-button, .rep-button, .ep-button, .ad-pricing__button, .vr-toolbar-button, .vr-song__choice, .offer-download, .vr-sort__text, [data-confirm]) { transition:none; }
}
@media (forced-colors: active) {
  :is(.button, .ad-button, .rep-button, .ep-button, .ad-pricing__button, .vr-toolbar-button, .vr-song__choice, .offer-download, .vr-sort__text, [data-confirm]):focus-visible { outline:2px solid Highlight; outline-offset:2px; }
}

/* Icon controls: the glyph is 24 px, the target is always 44 px. */
:root { --public-icon-target:44px; --public-icon-size:20px; --icon-public-dismiss:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E"); }
:where(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button), .personal-menu-close, .menu-button[aria-expanded="true"], .dialog__bar button, .ad-lightbox__arrow, .address-autocomplete__clear, .ep-address__clear, .public-icon-button) { --pi-ink:var(--ui-color-ink); --pi-bg:transparent; --pi-line:var(--ui-color-line); --pi-hover:var(--ui-paint-d7b1495532); }
:is(.review-dialog .dialog__close,.video-dialog__close,.profile-photo-dialog__close,.ad-lightbox__close,.ad-lightbox__arrow,.ad-avatar-dialog__close,.vr-guide__close,.public-icon-surface--dark .public-icon-button) { --pi-ink:var(--ui-color-white); --pi-bg:var(--ui-paint-849be53e78); --pi-line:var(--ui-paint-5003976993); --pi-hover:var(--ui-paint-82e16a9943); }
:is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button), .personal-menu-close, .menu-button[aria-expanded="true"], .dialog__bar button, .ad-lightbox__arrow, .address-autocomplete__clear, .ep-address__clear, .public-icon-button) {
 box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0;
 width:var(--public-icon-target); height:var(--public-icon-target); min-width:var(--public-icon-target); min-height:var(--public-icon-target); padding:0;
 border:1px solid var(--pi-line); border-radius:var(--public-button-radius); color:var(--pi-ink); background:var(--pi-bg);
 font:var(--public-button-weight) var(--ui-font-size-15)/1 var(--ui-font-family); cursor:pointer; box-shadow:none;
}
:is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button), .personal-menu-close, .menu-button[aria-expanded="true"], .dialog__bar button, .ad-lightbox__arrow, .address-autocomplete__clear, .ep-address__clear, .public-icon-button) > svg { width:var(--public-icon-size); height:var(--public-icon-size); stroke-width:2; }
:is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button),.personal-menu-close,.menu-button[aria-expanded="true"],.address-autocomplete__clear,.ep-address__clear) { font-size:0; }
:is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button),.personal-menu-close,.menu-button[aria-expanded="true"],.address-autocomplete__clear,.ep-address__clear) > :is(svg,i,span) { display:none; }
:is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button),.personal-menu-close,.menu-button[aria-expanded="true"],.address-autocomplete__clear,.ep-address__clear)::after { content:""; display:block; width:var(--public-icon-size); height:var(--public-icon-size); background:currentColor; mask:var(--icon-public-dismiss) center/contain no-repeat; -webkit-mask:var(--icon-public-dismiss) center/contain no-repeat; }
@media (hover:hover) and (pointer:fine) { :is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button), .personal-menu-close, .menu-button[aria-expanded="true"], .dialog__bar button, .ad-lightbox__arrow, .address-autocomplete__clear, .ep-address__clear, .public-icon-button):hover:not(:disabled) { background:var(--pi-hover); border-color:currentColor; } }
:is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button), .personal-menu-close, .menu-button[aria-expanded="true"], .dialog__bar button, .ad-lightbox__arrow, .address-autocomplete__clear, .ep-address__clear, .public-icon-button):focus-visible { outline:none; border-color:var(--ui-color-accent); background:var(--pi-hover); }
:is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button), .personal-menu-close, .menu-button[aria-expanded="true"], .dialog__bar button, .ad-lightbox__arrow, .address-autocomplete__clear, .ep-address__clear, .public-icon-button):disabled { opacity:.45; cursor:not-allowed; }
:is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button), .personal-menu-close, .menu-button[aria-expanded="true"], .dialog__bar button, .ad-lightbox__arrow, .address-autocomplete__clear, .ep-address__clear, .public-icon-button)[hidden] { display:none; }
svg[data-public-icon-custom] { background:currentColor; mask:var(--public-icon-image) center/contain no-repeat; -webkit-mask:var(--public-icon-image) center/contain no-repeat; }
svg[data-public-icon-custom] > * { visibility:hidden; }
@media(forced-colors:active) { :is(button[aria-label^="Закрыть"]:not([class*="backdrop"]):not(.menu-button), .personal-menu-close, .menu-button[aria-expanded="true"], .dialog__bar button, .ad-lightbox__arrow, .address-autocomplete__clear, .ep-address__clear, .public-icon-button):focus-visible { outline:2px solid Highlight; } }

/* Repertoire counters: same corner geometry on both public sites. */

.vr-toolbar-button svg { width:var(--ui-space-18); height:var(--ui-space-18); fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
:is(.vr-favorites-toggle,.ac-control--favorites)[aria-pressed="true"] { --pb-ink:var(--ui-favorite-ink); --pb-background:var(--ui-favorite-soft); --pb-line:var(--ui-favorite-line); }
:is(.vr-favorites-toggle,.ac-control--favorites)[aria-pressed="true"] svg { fill:currentColor; }

/* Calculator actions share one owner in cabinet and lazy public runtime. */
.button.button--calculator, .button.button--calculator-download {
 border-radius:var(--ui-radius-control);
 --pb-ink:var(--ui-color-ink); --pb-background:var(--ui-color-white); --pb-line:var(--ui-color-white);
 color:var(--pb-ink); background:var(--pb-background); border-color:var(--pb-line);
}
.button.button--calculator-download { width:var(--ui-calculator-action-height); padding:0; --pb-ink:var(--ui-color-white); --pb-background:transparent; --pb-line:var(--ui-color-line); }
.button.button--calculator:is(:hover,:focus-visible):not(:disabled), .button.button--calculator-download:is(:hover,:focus-visible):not(:disabled) { color:var(--ui-color-white); background:var(--ui-color-accent); border-color:var(--ui-color-accent); }

.calculator__actions :is(.button,.offer-download) { height:var(--ui-calculator-action-height); min-height:var(--ui-calculator-action-height); }
