.atm-icon { display:inline-block; width:24px; height:24px; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:1.65!important; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; pointer-events:none; }
.atm-icon use { fill:none; stroke:inherit; }
.atm-icon.action-icon { width:17px; height:17px; margin-right:5px; }
.worker-action-link .atm-icon { width:14px; height:14px; }
.photo-add > .atm-icon { margin-right:0; }
.avatar-upload-button .atm-icon { width:18px; height:18px; }
.sidebar-toggle { display:grid; place-items:center; padding:0; }
.sidebar-toggle .atm-icon { width:25px; height:25px; }
.nav-icon .atm-icon,.order-search-toggle .atm-icon,.notifications-rail .atm-icon { width:22px; height:22px; }
.home-tile-icon .atm-icon { width:38px; height:38px; }
.home-tile { align-items:center; }
.home-tile h2 { margin:0; line-height:1.3; }
.global-create-appointment-fab .atm-icon { width:34px; height:34px; stroke-width:2.2; }
.global-create-appointment-fab:hover { box-shadow:0 0 30px rgba(37,99,235,.32)!important; }
.global-create-appointment-fab:focus-visible { outline:3px solid #93c5fd; outline-offset:4px; }
.account-close,.appointment-modal-close,.simple-action-modal-close,.car-catalog-picker-close,.app-toast-close,[data-close-autocomplete] { display:inline-grid; place-items:center; padding:0; }
.account-close .atm-icon,.appointment-modal-close .atm-icon,.simple-action-modal-close .atm-icon,.car-catalog-picker-close .atm-icon { width:23px; height:23px; }
.photo-remove .atm-icon { width:16px; height:16px; stroke-width:2; }
.app-toast-close .atm-icon,[data-close-autocomplete] .atm-icon,.service-line-remove .atm-icon { width:18px; height:18px; }
.calendar-nav-btn .atm-icon,.today-date-arrow .atm-icon { width:24px; height:24px; }
.button > .atm-icon,.change-badge > .atm-icon { width:18px; height:18px; margin-right:5px; }
.avatar-actions > .button .atm-icon { margin-right:0; }
.button > .atm-icon:last-child { margin-right:0; }
.change-badge > .atm-icon { width:14px; height:14px; margin-right:0; }
.feature-panel h2 > .atm-icon { width:23px; height:23px; margin-right:5px; }
.th-search-btn .atm-icon { width:16px; height:16px; }
.dashboard-worker-plus .atm-icon { width:18px; height:18px; }
.add-service-rule-icon .atm-icon { width:23px; height:23px; }
.site-confirm-icon .atm-icon { width:32px; height:32px; }
.appointment-additional-summary > span::before { display:none; content:none; }
.appointment-additional-summary .extra-minus { display:none; }
.appointment-additional-card[open] .appointment-additional-summary .extra-add { display:none; }
.appointment-additional-card[open] .appointment-additional-summary .extra-minus { display:inline-block; }
.appointment-additional-summary .atm-icon { width:26px; height:26px; padding:4px; border-radius:50%; background:#2563eb1f; color:#2563eb; }
/* Browser-native controls use the same original drawings, never a platform glyph. */
select:not([multiple]):not([size]) { appearance:none; background-image:url('../icons/chevron-down.svg?v=270'); background-position:right 12px center; background-size:16px; background-repeat:no-repeat; padding-right:36px!important; }
.theme-slider::before { background-image:none!important; }
.theme-slider::after { content:''; position:absolute; width:16px; height:16px; top:12px; left:12px; background:#0f172a; mask:url('../icons/sun.svg?v=270') center/contain no-repeat; transition:transform .24s ease; pointer-events:none; }
.theme-switch input:checked + .theme-slider::after { transform:translateX(32px); background:#f8fafc; mask-image:url('../icons/moon.svg?v=270'); }
.small-switch .theme-slider::after { top:10px; left:10px; }
.small-switch input:checked + .theme-slider::after { transform:translateX(28px); }
.sound-switch .theme-slider::after { background:#0f172a; mask-image:url('../icons/volume-off.svg?v=270'); }
.sound-switch input:checked + .theme-slider::after { background:#f8fafc; mask-image:url('../icons/volume-on.svg?v=270'); }
input[type=checkbox]:not(.theme-switch input):not(.permission-tile input) { appearance:none; width:18px; height:18px; min-width:18px; padding:0; border:1.5px solid #64748b; border-radius:5px; background:transparent; vertical-align:middle; cursor:pointer; }
input[type=checkbox]:not(.theme-switch input):not(.permission-tile input):checked { background:#2563eb url('../icons/check.svg?v=270') center/16px no-repeat; border-color:#2563eb; }
input[type=checkbox]:not(.theme-switch input):not(.permission-tile input):indeterminate { background:#2563eb url('../icons/minus.svg?v=270') center/16px no-repeat; border-color:#2563eb; }
input[type=checkbox]:focus-visible { outline:3px solid #60a5fa; outline-offset:3px; }
@media(forced-colors:active) { select:not([multiple]):not([size]),input[type=checkbox]:not(.theme-switch input):not(.permission-tile input) { appearance:auto; background-image:none; } }
@media(prefers-reduced-motion:reduce) { .theme-slider::before,.theme-slider::after { transition:none; } }
