html.sam-app {
  --sam-page: #F4F2F8; --sam-card: #FFFFFF; --sam-sheet: #F4F2F8; --sam-group: #FFFFFF; --sam-ink: #1D1630; --sam-sub: #6C6580;
  --sam-line: #ECE8F3; --sam-soft: #E9E5F1; --sam-acc: #7C3AED; --sam-acc-ink: #FFFFFF; --sam-acc-soft: rgba(124, 58, 237, .1);
  --sam-track: #E2DEEA; --sam-handle: #CFCAD9; --sam-shadow: 0 1px 2px rgba(29, 22, 48, .05), 0 10px 28px -18px rgba(29, 22, 48, .28);
  --sam-warn-bg: #FFF4DE; --sam-warn-ink: #6B4A00; --sam-warn-sub: #8A6A1F; --sam-bad-bg: #FDE8E8; --sam-bad-ink: #8C1D1D; --sam-bad-sub: #A84444;
  --sam-red: #E5484D;
}
html.sam-app.sam-dark {
  --sam-page: #111015; --sam-card: #1C1A22; --sam-sheet: #1C1A22; --sam-group: #26232E; --sam-ink: #F2EFF8; --sam-sub: #A49EB4;
  --sam-line: #2E2B37; --sam-soft: #2B2833; --sam-acc: #A78BFA; --sam-acc-ink: #1D1630; --sam-acc-soft: rgba(167, 139, 250, .16);
  --sam-track: #35313F; --sam-handle: #4A4655; --sam-shadow: none;
  --sam-warn-bg: #2E2614; --sam-warn-ink: #F5D58C; --sam-warn-sub: #CDB57E; --sam-bad-bg: #331A1C; --sam-bad-ink: #FFB4B4; --sam-bad-sub: #E39A9A;
  --sam-red: #FF7A7F;
}

#samRoot { display: none; }
html.sam-on body { overflow: hidden !important; }
html.sam-on #samRoot {
  display: block; position: fixed; inset: 0; z-index: 610; overflow-y: auto; overscroll-behavior: contain;
  background: var(--sam-page); color: var(--sam-ink); font-family: 'Inter', system-ui, sans-serif; -webkit-font-smoothing: antialiased;
  padding: env(safe-area-inset-top, 0px) 0 calc(env(safe-area-inset-bottom, 0px) + 118px); border-radius: 0 !important;
}
.sam *, .sam-ov * { box-sizing: border-box; }
.sam button, .sam-ov button { font-family: inherit; -webkit-tap-highlight-color: transparent; }
.sam svg, .sam-ov svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.sam-top { display: grid; grid-template-columns: 96px 1fr 96px; align-items: center; height: 64px; padding: 0 16px; }
.sam-logo { width: 36px; height: auto; display: block; }
.sam-name { margin: 0; text-align: center; font-size: 17px; font-weight: 600; letter-spacing: -.01em; color: var(--sam-ink) !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-family: inherit !important; }
.sam-acts { display: flex; justify-content: flex-end; gap: 8px; }
.sam-ic { position: relative; width: 42px; height: 42px; border: 0; border-radius: 50% !important; background: var(--sam-card); color: var(--sam-ink); display: grid; place-items: center; cursor: pointer; box-shadow: var(--sam-shadow); }
.sam-ic svg { width: 21px; height: 21px; }
.sam-ic:focus-visible, .sam-sq:focus-visible, .sam-count:focus-visible, .sam-calbtn:focus-visible, .sam-row:focus-visible, .sam-pill:focus-visible, .sam-note-b:focus-visible, .sam-save:focus-visible { outline: 2px solid var(--sam-acc); outline-offset: 2px; }
.sam-theme { perspective: 300px; }
.sam-flip { position: relative; width: 22px; height: 22px; display: block; transform-style: preserve-3d; transition: transform .5s cubic-bezier(.3, .7, .2, 1); }
.sam-theme.night .sam-flip { transform: rotateY(180deg); }
.sam-face { position: absolute; inset: 0; display: grid; place-items: center; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.sam-face svg { width: 21px; height: 21px; }
.sam-moon svg { fill: currentColor; stroke: none; }
.sam-sun { transform: rotateY(180deg); color: #F5B841; }
.sam-badge { position: absolute; top: 4px; right: 4px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px !important; background: var(--sam-red); color: #fff; font: 600 11px/18px 'Inter', sans-serif; text-align: center; font-style: normal; box-shadow: 0 0 0 2px var(--sam-card); }
.sam-badge[hidden] { display: none; }

.sam-main { padding: 0 16px; max-width: 560px; margin: 0 auto; }
.sam-book { display: flex; align-items: center; gap: 12px; margin-top: 6px; padding: 18px 14px 18px 20px; border-radius: 28px !important; background: var(--sam-card); box-shadow: var(--sam-shadow); }
.sam-book-l { flex: 1; min-width: 0; }
.sam-book-t { margin: 0; font-size: 24px; font-weight: 600; letter-spacing: -.02em; color: var(--sam-ink) !important; font-family: inherit !important; }
.sam-book-s { margin: 4px 0 14px; font-size: 13px; color: var(--sam-sub); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sam-calbtn { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 16px 0 13px; border: 0; border-radius: 22px !important; background: var(--sam-acc-soft); color: var(--sam-acc); font-size: 14px; font-weight: 600; cursor: pointer; max-width: 100%; }
.sam-calbtn svg { width: 19px; height: 19px; flex: none; }
.sam-calbtn span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sam-count { position: relative; flex: none; width: 116px; height: 116px; border: 0; padding: 0; background: none; color: var(--sam-ink); cursor: pointer; border-radius: 22px !important; }
.sam-arc { position: absolute; inset: 0; width: 100%; height: 100%; }
.sam-arc path { fill: none; stroke-width: 9; stroke-linecap: round; }
.sam-arc-bg { stroke: var(--sam-track); }
.sam-arc-fg { stroke: var(--sam-acc); stroke-dasharray: 164 164; stroke-dashoffset: 164; transition: stroke-dashoffset .8s cubic-bezier(.3, .7, .2, 1); }
.sam-count-n { position: absolute; left: 30px; right: 4px; top: 0; bottom: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.sam-count-n b { font-size: 40px; font-weight: 600; letter-spacing: -.03em; line-height: 1; font-variant-numeric: tabular-nums; }
.sam-count-n small { margin-top: 4px; font-size: 12px; color: var(--sam-sub); }
.sam-new { position: absolute; right: 0; top: -2px; padding: 3px 8px; border-radius: 10px !important; background: var(--sam-red); color: #fff; font-size: 11px; font-weight: 600; }
.sam-new[hidden] { display: none; }

.sam-notes:empty { display: none; }
.sam-notes { display: flex; flex-direction: column; gap: 10px; margin-top: 12px; }
.sam-note { display: flex; align-items: center; gap: 12px; padding: 13px 13px 13px 16px; border-radius: 20px !important; background: var(--sam-warn-bg); }
.sam-note.bad { background: var(--sam-bad-bg); }
.sam-note-t { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.sam-note-t b { font-size: 14px; font-weight: 600; color: var(--sam-warn-ink); }
.sam-note-t span { font-size: 12.5px; line-height: 1.4; color: var(--sam-warn-sub); }
.sam-note.bad .sam-note-t b { color: var(--sam-bad-ink); }
.sam-note.bad .sam-note-t span { color: var(--sam-bad-sub); }
.sam-note-b { flex: none; height: 38px; padding: 0 15px; border: 0; border-radius: 19px !important; background: var(--sam-ink); color: var(--sam-page); font-size: 13px; font-weight: 600; cursor: pointer; }

.sam-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.sam-sq { position: relative; aspect-ratio: 1 / 1; min-width: 0; border: 0; border-radius: 22px !important; background: var(--sam-card); color: var(--sam-ink); box-shadow: var(--sam-shadow); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; cursor: pointer; padding: 6px 4px; }
.sam-sq svg { width: 26px; height: 26px; color: var(--sam-acc); }
.sam-sq span { font-size: 12.5px; font-weight: 600; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sam-sq .sam-badge { top: 7px; right: 7px; }
.sam-sq:active, .sam-ic:active, .sam-count:active, .sam-calbtn:active { transform: scale(.97); }
html.sam-limited .sam-sq[data-k="salon"], html.sam-limited .sam-sq[data-k="money"], html.sam-limited .sam-sq[data-k="chat"], html.sam-limited #samBell { display: none; }

.sam-ov { position: fixed; inset: 0; display: flex; align-items: flex-end; justify-content: center; background: rgba(10, 6, 20, 0); transition: background .25s; font-family: 'Inter', system-ui, sans-serif; color: var(--sam-ink); -webkit-font-smoothing: antialiased; }
.sam-ov.open { background: rgba(10, 6, 20, .46); }
.sam-sheet { width: 100%; max-width: 640px; max-height: calc(100% - 24px); display: flex; flex-direction: column; background: var(--sam-sheet); border-radius: 26px 26px 0 0 !important; transform: translateY(100%); transition: transform .32s cubic-bezier(.2, .8, .2, 1); padding-bottom: env(safe-area-inset-bottom, 0px); box-shadow: 0 -10px 40px -12px rgba(10, 6, 20, .35); }
.sam-ov.open .sam-sheet { transform: none; }
.sam-sheet.drag { transition: none; }
.sam-sheet.full { height: calc(100% - 24px); }
.sam-grab { flex: none; width: 100%; height: 26px; display: flex; align-items: center; justify-content: center; border: 0; background: none; cursor: pointer; padding: 0; touch-action: none; }
.sam-grab i { width: 42px; height: 5px; border-radius: 3px !important; background: var(--sam-handle); }
.sam-sh-t { flex: none; margin: 4px 20px 14px; text-align: center; font-size: 19px; font-weight: 600; letter-spacing: -.01em; color: var(--sam-ink) !important; font-family: inherit !important; touch-action: none; }
.sam-pills { flex: none; display: flex; gap: 6px; padding: 0 16px 14px; overflow-x: auto; scrollbar-width: none; justify-content: flex-start; }
.sam-pills::-webkit-scrollbar { display: none; }
.sam-pill { flex: none; height: 38px; padding: 0 12px; border: 0; border-radius: 19px !important; background: var(--sam-soft); color: var(--sam-ink); font-size: 13px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.sam-pill.on { background: var(--sam-acc); color: var(--sam-acc-ink); }
.sam-sh-body { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 0 16px 28px; -webkit-overflow-scrolling: touch; }
.sam-empty { margin: 28px 8px; text-align: center; font-size: 14px; color: var(--sam-sub); }

.sam-rows { display: flex; flex-direction: column; }
.sam-sec { margin: 20px 8px 8px; font-size: 13px; font-weight: 600; color: var(--sam-sub); }
.sam-sec:empty { margin: 10px 0 0; }
.sam-rows > .sam-sec:first-child { margin-top: 4px; }
.sam-group { border-radius: 20px !important; background: var(--sam-group); overflow: hidden; }
.sam-group + .sam-group { margin-top: 12px; }
.sam-row { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 62px; padding: 11px 14px 11px 18px; border: 0; background: none; color: var(--sam-ink); text-align: left; font-size: 16px; cursor: pointer; }
.sam-row.still { cursor: default; }
.sam-row + .sam-row { box-shadow: inset 18px 1px 0 -17px var(--sam-line), inset 0 1px 0 var(--sam-line); }
.sam-row:active:not(.still) { background: var(--sam-soft); }
.sam-row-t { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.sam-row-t b { font-size: 16.5px; font-weight: 500; letter-spacing: -.005em; overflow: hidden; text-overflow: ellipsis; }
.sam-row-t small { font-size: 13px; color: var(--sam-sub); line-height: 1.35; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.sam-row-v { flex: none; max-width: 48%; text-align: right; font-size: 14px; color: var(--sam-sub); font-variant-numeric: tabular-nums; display: flex; align-items: center; gap: 6px; justify-content: flex-end; flex-wrap: wrap; }
.sam-row-v b { color: var(--sam-ink); font-weight: 600; }
.sam-row-v s { opacity: .7; }
.sam-chev { flex: none; font-size: 26px; line-height: 1; color: var(--sam-sub); margin-left: -2px; }
.sam-row.acc b { color: var(--sam-acc); font-weight: 600; }
.sam-row.danger b { color: var(--sam-red); font-weight: 600; }
.sam-cp { padding: 2px 7px; border-radius: 8px !important; background: var(--sam-soft); color: var(--sam-sub); font-weight: 600; font-size: 12.5px; }
.sam-cp.on { background: var(--sam-acc-soft); color: var(--sam-acc); }

.sam-plan-st { display: flex; flex-direction: column; gap: 4px; padding: 16px 18px; border-radius: 20px !important; background: var(--sam-group); }
.sam-plan-st b { font-size: 17px; font-weight: 600; }
.sam-plan-st span { font-size: 13.5px; color: #1E8E4E; font-weight: 500; }
html.sam-dark .sam-plan-st span { color: #6BD69B; }
.sam-plan-st.off span { color: var(--sam-red); }
.sam-plan-st em { font-style: normal; font-size: 12.5px; color: var(--sam-acc); }

.sam-form { display: flex; flex-direction: column; gap: 14px; }
.sam-form .admin-field { margin: 0 !important; display: flex; flex-direction: column; gap: 6px; }
.sam-form .admin-field > label { font-size: 13px !important; font-weight: 600 !important; color: var(--sam-sub) !important; letter-spacing: 0 !important; text-transform: none !important; margin: 0 4px !important; }
html.sam-app body .sam-ov .sam-form .admin-field input, html.sam-app body .sam-ov .sam-form .admin-field select, html.sam-app body .sam-ov .sam-form .admin-field textarea {
  width: 100% !important; min-height: 52px; padding: 0 16px !important; border: 1.5px solid transparent !important; border-radius: 16px !important;
  background: var(--sam-group) !important; color: var(--sam-ink) !important; font: 400 16px 'Inter', system-ui, sans-serif !important; box-shadow: none !important; outline: none;
}
.sam-form .admin-field textarea { min-height: 120px; padding: 14px 16px !important; line-height: 1.5; resize: vertical; }
html.sam-app body .sam-ov .sam-form .admin-field input:focus, html.sam-app body .sam-ov .sam-form .admin-field select:focus, html.sam-app body .sam-ov .sam-form .admin-field textarea:focus { border-color: var(--sam-acc) !important; }
html.sam-app body .sam-ov .sam-form .admin-field input::placeholder, html.sam-app body .sam-ov .sam-form .admin-field textarea::placeholder { color: var(--sam-sub) !important; opacity: .8; }
html.sam-dark .sam-form select { color-scheme: dark; }
.sam-form .admin-field div, .sam-form .admin-field small, .sam-hint { font-size: 12.5px !important; color: var(--sam-sub) !important; margin: 0 4px !important; line-height: 1.45; }
.sam-form .admin-field a { color: var(--sam-acc) !important; font-weight: 600; }
.sam-save { height: 52px; margin-top: 6px; border: 0; border-radius: 26px !important; background: var(--sam-acc); color: var(--sam-acc-ink); font-size: 16px; font-weight: 600; cursor: pointer; }
.sam-save:disabled { opacity: .55; }
.sam-danger { height: 50px; margin-top: 8px; border: 1.5px solid color-mix(in srgb, var(--sam-red) 45%, transparent); border-radius: 25px !important; background: none; color: var(--sam-red); font-size: 15px; font-weight: 600; cursor: pointer; }
.sam-artist { display: flex; align-items: center; gap: 14px; margin: 0 4px 18px; }
.sam-artist div { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sam-artist b { font-size: 19px; font-weight: 600; }
.sam-artist small { font-size: 13px; color: var(--sam-sub); }
.sam-av { position: relative; flex: none; width: 64px; height: 64px; border-radius: 50% !important; overflow: hidden; background: var(--sam-acc-soft); display: grid; place-items: center; }
.sam-av img { width: 100%; height: 100%; object-fit: cover; }
.sam-av i { display: none; font-style: normal; font-size: 24px; font-weight: 600; color: var(--sam-acc); }
.sam-av.noimg i { display: block; }

.sam-legacy { border-radius: 20px !important; background: #fff; color: #1D1630; padding: 14px; }
.sam-legacy.flat, .sam-sheet.full .sam-legacy { padding: 4px 2px; background: transparent; }
.sam-sheet.full .sam-legacy { border-radius: 0 !important; }
.sam-legacy > .admin-section, .sam-legacy .admin-section { display: block !important; padding: 0 !important; margin: 0 !important; }
.sam-legacy .sa-edit-box { background: transparent !important; box-shadow: none !important; max-height: none !important; width: 100% !important; padding: 0 !important; transform: none !important; border-radius: 0 !important; }
.sam-legacy .sa-edit-box > div:first-child:has(h3) { display: none !important; }
.sam-legacy.sam-pw details.acct-pw { margin: 0 !important; border: 0 !important; padding: 0 !important; background: none !important; }
.sam-legacy.sam-pw details.acct-pw > summary { display: none !important; }
.sam-legacy .owner-pin-row { border: 0 !important; padding: 0 !important; background: none !important; flex-wrap: wrap; }
.sam-legacy .opr-btn { display: none !important; }
.sam-legacy .opr-form { display: flex !important; }
.sam-sheet.full .sam-legacy { min-height: 100%; }
.sam-sheet.cal .sam-sh-body, .sam-sheet.chat .sam-sh-body { padding: 0 10px 10px; }
.sam-sheet.cal .gcal { margin: 0 !important; }
.sam-sheet.cal .sam-legacy, .sam-sheet.chat .sam-legacy, .sam-sheet.inbox .sam-legacy, .sam-sheet.notifs .sam-legacy { background: #fff; border-radius: 20px !important; padding: 10px 8px; }
.sam-sheet.cal .sam-sh-body { overflow: hidden; }
.sam-sheet .an-head .an-title, .sam-sheet.inbox .sp-head .sp-title { display: none; }
.sam-income .bill-section-title { font-size: 1rem !important; }

html.sam-dark .sam-legacy, html.sam-dark .sam-sheet.full .sam-legacy { filter: invert(.92) hue-rotate(180deg); background: #fff; }
html.sam-dark .sam-legacy img, html.sam-dark .sam-legacy video, html.sam-dark .sam-legacy canvas, html.sam-dark .sam-legacy iframe,
html.sam-dark .sam-legacy .av, html.sam-dark .sam-legacy .av-emo { filter: invert(1) hue-rotate(180deg); }
html.sam-on.sam-dark .gc-sheet, html.sam-on.sam-dark .confirm-box, html.sam-on.sam-dark .pay-box, html.sam-on.sam-dark .pay-modal { filter: invert(.92) hue-rotate(180deg); }
html.sam-on.sam-dark .gc-sheet img, html.sam-on.sam-dark .confirm-box img, html.sam-on.sam-dark .pay-box img, html.sam-on.sam-dark .pay-modal img { filter: invert(1) hue-rotate(180deg); }

html.sam-on .gc-sheet-ov { align-items: flex-end !important; }
html.sam-on .gc-sheet { width: min(640px, 100%) !important; border-radius: 26px 26px 0 0 !important; padding-left: 18px; padding-right: 18px; }
html.sam-on .gc-grab { display: block !important; width: 42px; height: 5px; background: #CFCAD9; margin: .55rem auto .8rem; }

@media (max-width: 370px) {
  .sam-top { grid-template-columns: 84px 1fr 96px; padding: 0 12px; }
  .sam-main { padding: 0 12px; }
  .sam-count { width: 104px; height: 104px; }
  .sam-count-n { left: 26px; }
  .sam-count-n b { font-size: 34px; }
  .sam-book { padding-left: 16px; }
  .sam-book-t { font-size: 22px; }
  .sam-calbtn { padding: 0 12px 0 10px; font-size: 13px; }
  .sam-grid { gap: 8px; }
  .sam-sq span { font-size: 11.5px; }
}
@media (prefers-reduced-motion: reduce) {
  .sam-flip, .sam-sheet, .sam-ov, .sam-arc-fg { transition: none !important; }
}
html.sam-app body .sam-ov .sam-legacy .admin-field > label, html.sam-app body .sam-ov .sam-legacy .sa-edit-field > label { font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important; color: #6C6580 !important; margin: 0 4px 6px !important; }
html.sam-app body .sam-ov .sam-legacy .admin-field input, html.sam-app body .sam-ov .sam-legacy .admin-field select, html.sam-app body .sam-ov .sam-legacy .admin-field textarea {
  min-height: 50px; padding: 0 15px !important; border: 1.5px solid transparent !important; border-radius: 15px !important; background: #F4F2F8 !important; color: #1D1630 !important; font: 400 16px 'Inter', system-ui, sans-serif !important; box-shadow: none !important;
}
html.sam-app body .sam-ov .sam-legacy .admin-field textarea { padding: 13px 15px !important; min-height: 96px; }
html.sam-app body .sam-ov .sam-legacy .admin-field input:focus, html.sam-app body .sam-ov .sam-legacy .admin-field select:focus, html.sam-app body .sam-ov .sam-legacy .admin-field textarea:focus { border-color: #7C3AED !important; }
html.sam-app body .sam-ov .sam-legacy .admin-save-btn { width: 100% !important; height: 52px; padding: 0 !important; border-radius: 26px !important; text-transform: none !important; letter-spacing: 0 !important; font: 600 16px 'Inter', system-ui, sans-serif !important; }
html.sam-app body .sam-ov .sam-legacy .sa-cat-chip { height: 36px; padding: 0 14px; border-radius: 18px !important; font-size: 13px; }
html.sam-app body .sam-ov .sam-legacy .admin-field { margin-bottom: 14px !important; }

.sam-gal:empty { display: none; }
.sam-gal { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 12px; }
.sam-gal-t { position: relative; aspect-ratio: 1 / 1; padding: 0; border: 0; border-radius: 16px !important; overflow: hidden; background: var(--sam-card); cursor: pointer; }
.sam-gal-t img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sam-gal-m { position: absolute; top: 7px; right: 7px; width: 20px; height: 20px; color: #fff; filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .45)); }
.sam-gal-m svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.9; }
.sam-gal-more { grid-column: 1 / -1; height: 1px; }
.sam-gal-t:active { transform: scale(.98); }

html.sam-preview .modal-tab-book, html.sam-preview .mi-actions, html.sam-preview .mi-book-btn, html.sam-preview .mi-chat-btn,
html.sam-preview .svc-add, html.sam-preview .modal-fav-slot { display: none !important; }
html.sam-preview .service-item { pointer-events: none; cursor: default; }
html.sam-dark.sam-preview #modalOverlay .modal, html.sam-on.sam-dark .gp-ov { filter: invert(.92) hue-rotate(180deg); }
html.sam-dark.sam-preview #modalOverlay .modal img:not(.leaflet-tile), html.sam-dark.sam-preview #modalOverlay .modal video,
html.sam-dark.sam-preview #modalOverlay .modal canvas, html.sam-dark.sam-preview #modalOverlay .modal picture, html.sam-dark.sam-preview #modalOverlay .modal iframe,
html.sam-dark.sam-preview #modalOverlay .modal .av, html.sam-dark.sam-preview #modalOverlay .modal .av-emo,
html.sam-on.sam-dark .gp-ov img, html.sam-on.sam-dark .gp-ov video { filter: invert(1) hue-rotate(180deg); }
html.sam-dark.sam-preview #modalOverlay .modal .av img, html.sam-dark.sam-preview #modalOverlay .modal .av-emo img { filter: none; }
html.sam-dark.sam-preview #modalOverlay .modal .leaflet-tile { filter: brightness(1.12) contrast(.92); }
html.sam-dark.sam-preview #modalOverlay { background: rgba(0, 0, 0, .7); }

html.sam-on, html.sam-on body { background: var(--sam-page) !important; }
html.bt-app #pageLoader { display: none !important; }
.sam-ov, .sam-ov > .sam-sheet + *, .sam-main, .sam-top, .sam-acts, .sam-grid, .sam-gal, .sam-rows, .sam-legacy.flat { border-radius: 0 !important; }
.sam-book-l, .sam-count-n, .sam-note-t, .sam-row-t, .sam-sh-body, .sam-pills, .sam-form, .sam-find-res { border-radius: 0 !important; }

.sam-dock { position: fixed; z-index: 2; left: 50%; bottom: calc(env(safe-area-inset-bottom, 0px) + 14px); transform: translateX(-50%); width: calc(100% - 28px); max-width: 520px; height: 72px; display: grid; grid-template-columns: repeat(5, 1fr); align-items: center; justify-items: center; padding: 0 8px; border-radius: 36px !important; background: var(--sam-dock); border: 1px solid var(--sam-dock-line); box-shadow: 0 18px 40px -18px rgba(20, 10, 40, .45), 0 2px 8px rgba(20, 10, 40, .08); }
.sam-dk { width: 52px; height: 52px; display: grid; place-items: center; border: 1.5px solid transparent; border-radius: 50% !important; background: none; color: var(--sam-sub); cursor: pointer; padding: 0; }
.sam-dk svg { width: 25px; height: 25px; }
.sam-dk.on { color: var(--sam-ink); border-color: var(--sam-line); }
.sam-dk:active { transform: scale(.94); }
.sam-dk:focus-visible { outline: 2px solid var(--sam-acc); outline-offset: 2px; }
.sam-dk-add { width: 60px; height: 60px; color: #fff; border: 0; background: radial-gradient(120% 120% at 25% 15%, #A78BFA 0%, #7C3AED 45%, #DB2777 100%); box-shadow: 0 10px 22px -8px rgba(124, 58, 237, .65), inset 0 1px 0 rgba(255, 255, 255, .35); }
.sam-dk-add svg { width: 28px; height: 28px; stroke-width: 2.4; }
html.sam-limited .sam-dock { display: none; }
html.sam-app { --sam-dock: #FFFFFF; --sam-dock-line: #ECE8F3; }
html.sam-app.sam-dark { --sam-dock: #1B1A20; --sam-dock-line: #34313C; }

.sam-find { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; gap: 10px; height: 52px; margin: 0 0 6px; padding: 0 16px; border: 1.5px solid transparent; border-radius: 26px !important; background: var(--sam-group); color: var(--sam-sub); box-shadow: 0 0 0 6px var(--sam-sheet); }
.sam-find svg { width: 21px; height: 21px; flex: none; }
.sam-find input { flex: 1; min-width: 0; height: 100%; border: 0 !important; outline: none; background: transparent !important; color: var(--sam-ink) !important; font: 400 16px 'Inter', system-ui, sans-serif !important; box-shadow: none !important; padding: 0 !important; border-radius: 0 !important; -webkit-appearance: none; appearance: none; }
.sam-find input::placeholder { color: var(--sam-sub); opacity: .8; }
.sam-find input::-webkit-search-cancel-button { -webkit-appearance: none; }
.sam-find:focus-within { border-color: var(--sam-acc); }

html.sam-on.sam-dark #wizSheet .bks, html.sam-on.sam-dark #artistGateOverlay, html.sam-on.sam-dark #legalOverlay > *, html.sam-on.sam-dark .pe-box { filter: invert(.92) hue-rotate(180deg); }
html.sam-on.sam-dark #wizSheet .bks img:not(.leaflet-tile), html.sam-on.sam-dark #artistGateOverlay img, html.sam-on.sam-dark .pe-box img,
html.sam-on.sam-dark #wizSheet .bks .gate-av, html.sam-on.sam-dark #artistGateOverlay .gate-av { filter: invert(1) hue-rotate(180deg); }
html.sam-on.sam-dark #artistGateOverlay .gate-av img { filter: none; }
html.sam-on.sam-dark #wizSheet .leaflet-tile { filter: brightness(1.12) contrast(.92); }
