.admin-page { min-height: 100vh; background: #f3f6f3; }
.admin-shell { width: min(1240px, calc(100% - 40px)); margin-inline: auto; }
[hidden] { display: none !important; }

.login-view { min-height: 100vh; display: grid; grid-template-columns: minmax(420px, .8fr) 1.25fr; background: var(--cream); }
.login-card { width: min(470px, calc(100% - 56px)); align-self: center; justify-self: center; padding: 48px; background: rgba(255,253,248,.94); border: 1px solid rgba(33,78,69,.1); border-radius: 30px 8px 30px 8px; box-shadow: var(--shadow); }
.login-heading { margin: 54px 0 30px; }
.login-heading .eyebrow { margin-bottom: 13px; }
.login-heading h1 { margin: 0; font: 800 40px/1.1 "Manrope", sans-serif; letter-spacing: -2px; }
.login-heading > p:last-child { margin: 12px 0 0; color: var(--muted); line-height: 1.6; }
.login-form { display: grid; gap: 18px; }
.login-form label, .form-grid label { display: grid; gap: 7px; color: #425851; font-size: 12px; font-weight: 800; }
.login-form input, .form-grid input, .form-grid textarea { width: 100%; border: 1px solid var(--line); border-radius: 11px; outline: none; color: var(--ink); background: white; transition: border-color .2s, box-shadow .2s; }
.login-form input { height: 50px; padding: 0 14px; }
.login-form input:focus, .form-grid input:focus, .form-grid textarea:focus { border-color: var(--green-2); box-shadow: 0 0 0 3px rgba(54,115,99,.12); }
.password-field { position: relative; display: block; }
.password-field input { padding-right: 75px; }
.password-field button { position: absolute; top: 50%; right: 10px; padding: 7px; border: 0; transform: translateY(-50%); color: var(--green-2); background: transparent; font-size: 11px; font-weight: 800; cursor: pointer; }
.login-error, .form-error { min-height: 17px; margin: -7px 0 -3px; color: var(--coral-dark); font-size: 12px; font-weight: 700; }
.local-notice { display: grid; grid-template-columns: 22px 1fr; gap: 9px; margin-top: 22px; padding: 12px; color: #5e716a; background: var(--sage-light); border-radius: 10px; font-size: 11px; line-height: 1.5; }
.local-notice > span { width: 20px; height: 20px; display: grid; place-items: center; color: white; background: var(--green-2); border-radius: 50%; font-weight: 800; }
.local-notice p { margin: 0; }
.back-link { display: block; margin-top: 22px; color: var(--muted); text-align: center; font-size: 12px; font-weight: 700; }
.login-art { min-width: 0; padding: 22px; overflow: hidden; }
.login-art img { width: 100%; height: calc(100vh - 44px); object-fit: cover; object-position: 58% center; border-radius: 70px 10px 70px 10px; }

.admin-header { position: sticky; top: 0; z-index: 20; color: white; background: rgba(23,51,46,.94); backdrop-filter: blur(18px); }
.admin-header-inner { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.admin-header .brand-mark { background: var(--coral); }
.admin-header-actions { display: flex; align-items: center; gap: 12px; }
.admin-header .theme-toggle { color: #dce8e4; border-color: rgba(255,255,255,.16); }
.admin-header .theme-toggle:hover { background: rgba(255,255,255,.08); }
.store-link, .logout-button { padding: 9px 13px; border: 1px solid rgba(255,255,255,.16); border-radius: 9px; color: #dce8e4; background: transparent; font-size: 12px; font-weight: 800; cursor: pointer; }
.logout-button { color: #ffc7bb; }
.admin-main { padding: 64px 0 80px; }
.admin-title-row { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 34px; }
.admin-title-row .eyebrow { margin-bottom: 12px; }
.admin-title-row h1 { margin: 0; font: 800 clamp(38px, 5vw, 58px)/1 "Manrope", sans-serif; letter-spacing: -2.5px; }
.admin-title-row > div > p:last-child { margin: 13px 0 0; color: var(--muted); }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.stats-grid article { display: flex; align-items: center; gap: 15px; min-height: 105px; padding: 20px; background: white; border: 1px solid var(--line); border-radius: 18px 5px 18px 5px; }
.stat-icon { width: 42px; height: 42px; display: grid; flex: 0 0 auto; place-items: center; color: var(--green); background: var(--sage-light); border-radius: 12px 4px 12px 4px; font-weight: 900; }
.stat-icon.available { color: #24715a; background: #e0f2e9; }
.stat-icon.low { color: #a46b12; background: #fff3d8; }
.stat-icon.out { color: var(--coral-dark); background: #fff0eb; }
.stats-grid p { margin: 0 0 2px; color: var(--muted); font-size: 11px; font-weight: 700; }
.stats-grid strong { font: 800 27px "Manrope", sans-serif; }
.admin-tabs { display: flex; gap: 5px; margin-top: 28px; padding: 5px; width: fit-content; background: #e5ece8; border-radius: 11px; }
.admin-tabs button { min-width: 120px; padding: 10px 18px; border: 0; border-radius: 8px; color: #667770; background: transparent; font-size: 12px; font-weight: 800; cursor: pointer; }
.admin-tabs button.active { color: white; background: var(--green); box-shadow: 0 7px 16px rgba(33,78,69,.16); }
.admin-catalog { margin-top: 24px; padding: 28px; background: white; border: 1px solid var(--line); border-radius: 24px 7px 24px 7px; }
.admin-catalog-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.admin-catalog-heading h2 { margin: 0; font: 800 25px "Manrope", sans-serif; letter-spacing: -1px; }
.admin-catalog-heading p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.admin-tools { display: flex; align-items: center; gap: 8px; }
.admin-search { height: 40px; min-width: 210px; display: flex; align-items: center; gap: 7px; padding: 0 11px; border: 1px solid var(--line); border-radius: 9px; }
.admin-search input { width: 100%; border: 0; outline: 0; background: transparent; font-size: 12px; }
.soft-button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0 13px; border: 1px solid var(--line); border-radius: 9px; color: #526760; background: var(--sage-light); font-size: 11px; font-weight: 800; cursor: pointer; }
.file-button { position: relative; overflow: hidden; }
.file-button input, .upload-button input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.product-admin-list { border: 1px solid #e8eeea; border-radius: 13px; overflow: hidden; }
.admin-product { display: grid; grid-template-columns: minmax(260px, 2fr) 130px 105px 180px 120px 120px; align-items: center; gap: 14px; min-height: 86px; padding: 13px 16px; border-bottom: 1px solid #e8eeea; }
.admin-product:last-child { border: 0; }
.admin-product:hover { background: #fbfcfa; }
.admin-product-info { min-width: 0; display: flex; align-items: center; gap: 13px; }
.admin-thumb { width: 58px; height: 58px; display: grid; flex: 0 0 auto; place-items: center; overflow: hidden; color: var(--green); background: var(--thumb-bg); border-radius: 12px 4px 12px 4px; font: 800 17px "Manrope", sans-serif; }
.admin-thumb img { width: 100%; height: 100%; object-fit: cover; }
.admin-product h3 { margin: 0 0 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 750 13px "Manrope", sans-serif; }
.admin-product-info p, .admin-category { margin: 0; color: var(--muted); font-size: 11px; }
.admin-price { font: 800 13px "Manrope", sans-serif; }
.inventory-control { display: grid; grid-template-columns: 29px 54px 29px; align-items: center; justify-content: start; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; }
.inventory-control button { height: 31px; border: 0; background: var(--sage-light); cursor: pointer; font-weight: 800; }
.inventory-control output { text-align: center; font-size: 11px; font-weight: 800; }
.status-pill { width: fit-content; padding: 6px 9px; color: #24715a; background: #e5f3ec; border-radius: 20px; font-size: 9px; font-weight: 900; letter-spacing: .4px; text-transform: uppercase; }
.status-pill.low { color: #8d5e15; background: #fff1d3; }
.status-pill.out { color: var(--coral-dark); background: #fff0eb; }
.row-actions { display: flex; justify-content: flex-end; gap: 5px; }
.row-actions button { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 8px; background: white; cursor: pointer; }
.row-actions .delete { color: var(--coral-dark); }
.admin-empty { padding: 60px 20px; text-align: center; color: var(--muted); }
.storage-warning { max-width: 880px; margin: 18px auto 0; color: #73817d; text-align: center; font-size: 11px; line-height: 1.6; }

.payment-settings { margin-top: 24px; }
.payment-settings-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 22px; padding: 28px; background: white; border: 1px solid var(--line); border-radius: 24px 7px 24px 7px; }
.payment-settings-heading .eyebrow { margin-bottom: 7px; }
.payment-settings-heading h2 { margin: 0; font: 800 28px "Manrope", sans-serif; letter-spacing: -1.2px; }
.payment-settings-heading > div > p:last-child { margin: 7px 0 0; color: var(--muted); font-size: 12px; }
.payment-config-grid { display: grid; gap: 14px; }
.payment-config-card { padding: 26px 28px; background: white; border: 1px solid var(--line); border-radius: 20px 6px 20px 6px; }
.payment-config-title { display: grid; grid-template-columns: 52px 1fr auto; align-items: center; gap: 15px; }
.config-icon { width: 48px; height: 48px; display: grid; place-items: center; color: var(--green); background: var(--sage-light); border-radius: 13px 4px 13px 4px; font: 900 11px "Manrope", sans-serif; }
.config-icon.card { color: var(--coral-dark); background: #fff0eb; font-size: 25px; }
.payment-config-title h3, .message-card h3 { margin: 0 0 4px; font: 750 16px "Manrope", sans-serif; }
.payment-config-title p, .message-card p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.switch-control { display: grid; grid-template-columns: auto auto; align-items: center; gap: 8px; cursor: pointer; }
.switch-control input { position: absolute; opacity: 0; }
.switch-control > span { width: 42px; height: 24px; position: relative; background: #cbd6d1; border-radius: 30px; transition: .2s; }
.switch-control > span::after { content: ""; width: 18px; height: 18px; position: absolute; top: 3px; left: 3px; background: white; border-radius: 50%; box-shadow: 0 2px 5px rgba(0,0,0,.14); transition: .2s; }
.switch-control input:checked + span { background: var(--green-2); }
.switch-control input:checked + span::after { transform: translateX(18px); }
.switch-control b { min-width: 60px; color: var(--muted); font-size: 10px; }
.qr-admin-area { display: grid; grid-template-columns: 180px 1fr; align-items: center; gap: 24px; margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--line); }
.qr-admin-preview { width: 180px; height: 180px; display: grid; place-items: center; padding: 10px; overflow: hidden; color: #82908b; background: var(--sage-light); border: 1px dashed #b8c7c1; border-radius: 16px; font-size: 11px; font-weight: 700; text-align: center; }
.qr-admin-preview img { width: 100%; height: 100%; object-fit: contain; background: white; }
.qr-admin-actions h4 { margin: 0 0 5px; font: 750 14px "Manrope", sans-serif; }
.qr-admin-actions p { margin: 0 0 13px; color: var(--muted); font-size: 11px; }
.qr-upload { position: relative; margin-right: 8px; background: var(--sage-light); }
.qr-upload input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.payment-config-error { min-height: 15px; margin: 12px 0 0; color: var(--coral-dark); font-size: 11px; font-weight: 800; }
.pix-notice-editor { display: grid; gap: 16px; margin-top: 20px; padding-top: 22px; border-top: 1px solid var(--line); }
.pix-notice-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.pix-notice-heading h4 { margin: 0 0 5px; font: 800 14px "Manrope", sans-serif; }
.pix-notice-heading p, .pix-notice-editor small { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.pix-notice-editor > label { display: grid; gap: 7px; color: var(--ink); font-size: 11px; font-weight: 800; }
.pix-notice-editor input[type="text"], .pix-notice-editor textarea { width: 100%; padding: 12px; color: var(--ink); background: var(--paper); border: 1px solid var(--line); border-radius: 10px; outline: none; font: 12px/1.6 "DM Sans", sans-serif; }
.pix-notice-editor textarea { resize: vertical; }
.pix-notice-editor input:focus, .pix-notice-editor textarea:focus { border-color: var(--green-2); }
.sale-whatsapp { display: inline-block; margin: 0 0 16px; color: var(--green-2); font-size: 11px; font-weight: 800; overflow-wrap: anywhere; }
.sale-whatsapp.missing { color: var(--muted); font-weight: 500; }
.payment-config-card.compact { padding-block: 22px; }
.message-card { display: grid; grid-template-columns: minmax(230px, .7fr) 1.3fr; align-items: center; gap: 28px; }
.message-card textarea { width: 100%; resize: vertical; padding: 12px 13px; color: var(--ink); background: white; border: 1px solid var(--line); border-radius: 11px; outline: none; font: 12px/1.5 "DM Sans", sans-serif; }
.message-card textarea:focus { border-color: var(--green-2); box-shadow: 0 0 0 3px rgba(54,115,99,.12); }
.mobile-save-payment { display: none; }

.carousel-settings { margin-top: 24px; }
.carousel-config-card { padding: 26px 28px; background: white; border: 1px solid var(--line); border-radius: 20px 6px 20px 6px; }
.carousel-general-settings { display: grid; grid-template-columns: auto minmax(250px, 1fr) auto; align-items: center; gap: 28px; }
.duration-field { display: flex; align-items: center; justify-content: center; gap: 12px; color: #425851; font-size: 12px; font-weight: 800; }
.duration-field span { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 11px; font-weight: 600; }
.duration-field input { width: 72px; height: 42px; padding: 0 10px; color: var(--ink); background: white; border: 1px solid var(--line); border-radius: 9px; outline: none; text-align: center; font-weight: 800; }
.duration-field input:focus { border-color: var(--green-2); box-shadow: 0 0 0 3px rgba(54,115,99,.12); }
.carousel-upload { position: relative; overflow: hidden; background: var(--green); color: white; border-color: var(--green); }
.carousel-upload input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.carousel-help { margin: 16px 0 20px; padding-top: 16px; color: var(--muted); border-top: 1px solid var(--line); font-size: 11px; }
.carousel-admin-list { display: grid; gap: 10px; }
.carousel-admin-item { display: grid; grid-template-columns: 150px minmax(0, 1fr) auto; align-items: center; gap: 18px; padding: 12px; background: #f7f9f7; border: 1px solid #e4ebe7; border-radius: 14px 5px 14px 5px; }
.carousel-admin-preview { width: 150px; height: 82px; overflow: hidden; background: var(--sage-light); border-radius: 10px 3px 10px 3px; }
.carousel-admin-preview img { width: 100%; height: 100%; object-fit: cover; }
.carousel-admin-info { min-width: 0; }
.carousel-admin-info > span { display: block; margin-bottom: 6px; color: var(--green-2); font-size: 9px; font-weight: 900; letter-spacing: 1px; text-transform: uppercase; }
.carousel-admin-info label { display: grid; gap: 5px; color: #425851; font-size: 10px; font-weight: 800; }
.carousel-admin-info input { width: 100%; height: 39px; padding: 0 11px; color: var(--ink); background: white; border: 1px solid var(--line); border-radius: 8px; outline: none; font-size: 11px; }
.carousel-admin-info input:focus { border-color: var(--green-2); }
.carousel-order-actions { display: flex; gap: 5px; }
.carousel-order-actions button { width: 34px; height: 34px; display: grid; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 8px; color: var(--green); background: white; cursor: pointer; font-weight: 900; }
.carousel-order-actions button:disabled { opacity: .35; cursor: default; }
.carousel-order-actions .delete { color: var(--coral-dark); }
.carousel-admin-empty { padding: 55px 20px; color: var(--muted); background: var(--sage-light); border: 1px dashed #bdcbc5; border-radius: 13px; text-align: center; font-size: 12px; }

.sales-panel { margin-top: 24px; }
.sales-toolbar { display: flex; flex-wrap: wrap; gap: 8px; flex-shrink: 0; }
.danger-button { min-height: 40px; padding: 9px 13px; color: var(--coral-dark); background: transparent; border: 1px solid var(--coral-dark); border-radius: 9px; font-size: 11px; font-weight: 800; cursor: pointer; }
.danger-button:hover:not(:disabled) { background: rgba(229,105,79,.1); }
.danger-button:disabled { opacity: .4; cursor: not-allowed; }
.sale-actions { display: flex; justify-content: flex-end; margin-top: 16px; }
.sales-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.sales-stats article { display: grid; gap: 9px; padding: 23px 25px; background: white; border: 1px solid var(--line); border-radius: 17px 5px 17px 5px; }
.sales-stats span { color: var(--muted); font-size: 11px; font-weight: 700; }
.sales-stats strong { font: 800 26px "Manrope", sans-serif; letter-spacing: -.8px; }
.sales-notice { margin: 18px 0; padding: 14px 17px; color: #6b613e; background: #fff6df; border: 1px solid #ecdfb8; border-radius: 11px; font-size: 11px; line-height: 1.6; }
.sales-list { display: grid; gap: 14px; }
.sale-card { padding: 23px 26px; background: white; border: 1px solid var(--line); border-radius: 20px 6px 20px 6px; }
.sale-header { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-bottom: 17px; border-bottom: 1px solid var(--line); }
.sale-header p { margin: 0 0 6px; color: var(--green-2); font-size: 10px; font-weight: 800; }
.sale-header p span { color: var(--muted); font-weight: 500; }
.sale-header h3 { margin: 0; overflow-wrap: anywhere; font: 800 20px "Manrope", sans-serif; letter-spacing: -.6px; }
.sale-payment { flex-shrink: 0; padding: 8px 12px; color: #28765d; background: #e2f2e9; border-radius: 20px; font-size: 10px; font-weight: 900; }
.sale-payment.card { color: #985c30; background: #fff0df; }
.sale-items { display: grid; gap: 12px; padding: 18px 0; }
.sale-items > div { display: flex; align-items: start; justify-content: space-between; gap: 16px; font-size: 12px; }
.sale-items > div > span { color: var(--muted); }
.sale-items b { color: var(--ink); }
.sale-items strong { flex-shrink: 0; font-size: 12px; }
.sale-total { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-top: 14px; border-top: 1px solid var(--line); }
.sale-total span { color: var(--muted); font-size: 10px; }
.sale-total strong { font: 800 22px "Manrope", sans-serif; letter-spacing: -.8px; }
.sales-empty { padding: 65px 20px; color: var(--muted); text-align: center; background: white; border: 1px dashed var(--line); border-radius: 20px; }
.sales-empty > span { color: var(--green-2); font-size: 38px; }
.sales-empty h3 { margin: 12px 0 6px; color: var(--ink); font: 800 20px "Manrope", sans-serif; }
.sales-empty p { margin: 0; font-size: 12px; }

.editor-dialog { width: min(760px, calc(100% - 28px)); max-height: calc(100vh - 28px); padding: 0; overflow: hidden; border: 0; border-radius: 28px 8px 28px 8px; color: var(--ink); background: var(--paper); box-shadow: var(--shadow); }
.editor-dialog::backdrop { background: rgba(12,29,25,.64); backdrop-filter: blur(5px); }
.product-form { max-height: calc(100vh - 28px); display: flex; flex-direction: column; }
.editor-header, .editor-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 28px; background: white; }
.editor-header { border-bottom: 1px solid var(--line); }
.editor-header .eyebrow { margin-bottom: 5px; }
.editor-header h2 { margin: 0; font: 800 26px "Manrope", sans-serif; letter-spacing: -1px; }
.editor-scroll { padding: 26px 28px; overflow: auto; }
.photo-editor { display: grid; grid-template-columns: 180px 1fr; gap: 22px; align-items: center; padding: 18px; background: var(--sage-light); border-radius: 14px; }
.photo-preview { height: 128px; display: grid; place-items: center; align-content: center; overflow: hidden; color: #788a84; background: white; border: 1px dashed #b9c9c2; border-radius: 12px; }
.photo-preview span { font-size: 28px; }
.photo-preview p { margin: 5px 0 0; font-size: 10px; }
.photo-preview img { width: 100%; height: 100%; object-fit: contain; }
.photo-editor h3 { margin: 0 0 5px; font: 750 15px "Manrope", sans-serif; }
.photo-editor > div > p { margin: 0 0 13px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.upload-button { position: relative; margin-right: 8px; background: white; }
.remove-photo { padding: 8px 2px; border: 0; color: var(--coral-dark); background: transparent; font-size: 11px; font-weight: 800; cursor: pointer; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 24px; }
.form-grid .wide { grid-column: 1 / -1; }
.form-grid input { height: 48px; padding: 0 13px; }
.form-grid textarea { resize: vertical; padding: 12px 13px; line-height: 1.5; }
.form-grid small { color: #81908b; font-size: 10px; font-weight: 500; }
.form-error { margin: 14px 0 0; }
.editor-footer { border-top: 1px solid var(--line); }
.cancel-button { padding: 10px 16px; border: 0; color: var(--muted); background: transparent; font-weight: 800; cursor: pointer; }
.admin-page .toast { z-index: 100; }

@media (max-width: 1050px) {
  .admin-product { grid-template-columns: minmax(230px, 2fr) 110px 95px 130px 105px; }
  .admin-category { display: none; }
  .admin-catalog-heading { align-items: flex-start; flex-direction: column; }
  .admin-tools { width: 100%; flex-wrap: wrap; }
  .admin-search { flex: 1; }
  .carousel-general-settings { grid-template-columns: auto 1fr; }
  .carousel-upload { grid-column: 1 / -1; width: fit-content; }
}

@media (max-width: 780px) {
  .admin-shell { width: min(100% - 26px, 1240px); }
  .login-view { grid-template-columns: 1fr; }
  .login-card { width: min(470px, calc(100% - 28px)); padding: 34px 24px; }
  .login-art { display: none; }
  .login-heading { margin-top: 40px; }
  .admin-main { padding-top: 42px; }
  .admin-title-row { align-items: flex-start; flex-direction: column; }
  .stats-grid { grid-template-columns: 1fr 1fr; }
  .admin-catalog { padding: 18px 13px; }
  .admin-product { grid-template-columns: minmax(0, 1fr) auto; gap: 10px; }
  .admin-product > .admin-category, .admin-product > .admin-price, .admin-product > .inventory-control, .admin-product > .status-pill { display: none; }
  .row-actions { justify-content: flex-end; }
  .admin-tools { align-items: stretch; }
  .admin-search { flex-basis: 100%; }
  .photo-editor { grid-template-columns: 1fr; }
  .photo-preview { height: 180px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid .wide { grid-column: auto; }
  .editor-header, .editor-footer, .editor-scroll { padding-inline: 18px; }
  .payment-settings-heading { align-items: flex-start; padding: 22px 18px; }
  .payment-settings-heading > .button { display: none; }
  .payment-config-card { padding: 22px 18px; }
  .payment-config-title { grid-template-columns: 44px 1fr; }
  .switch-control { grid-column: 1 / -1; margin-top: 8px; }
  .qr-admin-area { grid-template-columns: 1fr; }
  .qr-admin-preview { width: min(220px, 100%); height: 220px; margin-inline: auto; }
  .message-card { grid-template-columns: 1fr; }
  .mobile-save-payment { display: block; margin-top: 14px; }
  .admin-tabs { width: 100%; overflow-x: auto; }
  .admin-tabs button { min-width: max-content; }
  .carousel-config-card { padding: 20px 16px; }
  .carousel-general-settings { grid-template-columns: 1fr; gap: 17px; }
  .carousel-general-settings .switch-control, .carousel-upload { grid-column: auto; }
  .duration-field { align-items: flex-start; justify-content: space-between; }
  .carousel-admin-item { grid-template-columns: 105px 1fr; gap: 12px; }
  .carousel-admin-preview { width: 105px; height: 82px; }
  .carousel-order-actions { grid-column: 1 / -1; justify-content: flex-end; }
  .sales-stats { grid-template-columns: 1fr; gap: 9px; }
  .sales-stats article { display: flex; align-items: center; justify-content: space-between; padding: 17px 20px; }
  .sales-stats strong { font-size: 23px; }
  .sale-card { padding: 20px 17px; }
  .sale-header { align-items: flex-start; flex-direction: column; gap: 10px; }
  .sales-panel .payment-settings-heading { flex-direction: column; gap: 16px; }
  .pix-notice-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
}

@media (max-width: 440px) {
  .admin-header .brand > span:last-child { display: none; }
  .stats-grid { gap: 9px; }
  .stats-grid article { min-height: 92px; padding: 13px; }
  .stat-icon { width: 34px; height: 34px; }
  .admin-title-row .button { width: 100%; }
  .soft-button { flex: 1; }
}

html[data-theme="dark"] .admin-page { background: #101c17; }
html[data-theme="dark"] .login-card { background: rgba(22,38,29,.96); border-color: var(--line); }
html[data-theme="dark"] .stats-grid article, html[data-theme="dark"] .admin-catalog, html[data-theme="dark"] .payment-settings-heading, html[data-theme="dark"] .payment-config-card, html[data-theme="dark"] .carousel-config-card, html[data-theme="dark"] .sales-stats article, html[data-theme="dark"] .sale-card, html[data-theme="dark"] .sales-empty, html[data-theme="dark"] .editor-header, html[data-theme="dark"] .editor-footer { background: #192a20; }
html[data-theme="dark"] .login-form input, html[data-theme="dark"] .form-grid input, html[data-theme="dark"] .form-grid textarea, html[data-theme="dark"] .message-card textarea, html[data-theme="dark"] .duration-field input, html[data-theme="dark"] .carousel-admin-info input, html[data-theme="dark"] .photo-preview, html[data-theme="dark"] .row-actions button, html[data-theme="dark"] .carousel-order-actions button { color: var(--ink); background: #122018; }
html[data-theme="dark"] .login-form label, html[data-theme="dark"] .form-grid label, html[data-theme="dark"] .duration-field, html[data-theme="dark"] .carousel-admin-info label { color: var(--ink); }
html[data-theme="dark"] .soft-button, html[data-theme="dark"] .local-notice { color: var(--muted); background: var(--sage-light); }
html[data-theme="dark"] .carousel-upload { color: white; background: var(--green); }
html[data-theme="dark"] .config-icon { color: var(--green-2); }
html[data-theme="dark"] .admin-product:hover { background: #21372a; }
html[data-theme="dark"] .product-admin-list, html[data-theme="dark"] .admin-product { border-color: var(--line); }
html[data-theme="dark"] .carousel-admin-item { background: #122018; border-color: var(--line); }
html[data-theme="dark"] .admin-tabs { background: #1d3025; }
html[data-theme="dark"] .admin-tabs button { color: var(--muted); }
html[data-theme="dark"] .admin-tabs button.active { color: white; }
html[data-theme="dark"] .sales-notice { color: #ddcfaa; background: #342d1c; border-color: #5e5030; }
html[data-theme="dark"] .sale-payment { color: #b7e4c9; background: #244535; }
html[data-theme="dark"] .sale-payment.card { color: #edc6a0; background: #493321; }

/* Operação e segurança */
.sale-operation {display:grid;gap:12px;padding:18px 0;border-top:1px solid var(--line);}
.sale-operation p {margin:0;color:var(--muted);overflow-wrap:anywhere;}
.sale-operation label {display:grid;gap:6px;font-weight:700;}
.sale-operation select,.payment-settings .form-grid input,.payment-settings .form-grid textarea {width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;}
.payment-settings .form-grid input[type=checkbox] {width:auto;}
.password-change-form {margin-top:24px;}
.password-change-form p {color:var(--muted);margin:16px 0;}
.admin-tabs {overflow-x:auto;}
