:root{--bg:#f6f3ee;--card:#fff;--text:#27211a;--muted:#766d61;--line:#e7ded2;--brand:#d97706;--brand2:#7c2d12;--ok:#15803d;--bad:#b91c1c;--soft:#fff7ed;--shadow:0 16px 40px rgba(77,45,10,.10)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(420px,100%);background:var(--card);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.login-brand{font-size:28px;font-weight:900;color:var(--brand2);margin:0 0 6px}.login-sub{margin:0 0 22px;color:var(--muted)}label{display:block;font-size:13px;font-weight:800;margin:14px 0 7px;color:#473729}input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:13px;padding:11px 12px;font:inherit;color:var(--text)}textarea{resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:13px;padding:11px 15px;font-weight:900;cursor:pointer;text-decoration:none;background:var(--brand);color:#fff}.btn.secondary{background:#fff;color:var(--brand2);border:1px solid var(--line)}.btn.danger{background:var(--bad)}.btn.ok{background:var(--ok)}.btn.small{padding:7px 10px;font-size:12px;border-radius:10px}.topbar{position:sticky;top:0;z-index:3;background:#fff;border-bottom:1px solid var(--line)}.topbar__in{max-width:1180px;margin:auto;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font-weight:1000;color:var(--brand2);font-size:20px;text-decoration:none}.nav{display:flex;gap:8px;flex-wrap:wrap}.nav a{color:#574434;text-decoration:none;font-weight:800;font-size:13px;padding:8px 10px;border-radius:10px}.nav a:hover,.nav a.active{background:var(--soft);color:var(--brand2)}.nav a.logout-link{background:var(--bad);color:#fff;border-color:var(--bad)}.nav a.logout-link:hover{background:#991b1b;color:#fff}
.userbox{font-size:12px;color:var(--muted);text-align:right}.wrap{max-width:1180px;margin:0 auto;padding:22px 18px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.page-head h1{margin:0;font-size:28px;color:#27180c}.page-head p{margin:6px 0 0;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 8px 20px rgba(60,40,20,.04)}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-6{grid-column:span 6}.col-8{grid-column:span 8}.col-12{grid-column:span 12}.stat{font-size:30px;font-weight:1000;color:var(--brand2)}.muted{color:var(--muted)}.table{width:100%;border-collapse:separate;border-spacing:0 8px}.table th{text-align:left;font-size:12px;color:var(--muted);padding:0 10px}.table td{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 10px;vertical-align:middle}.table td:first-child{border-left:1px solid var(--line);border-radius:14px 0 0 14px}.table td:last-child{border-right:1px solid var(--line);border-radius:0 14px 14px 0}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:900;background:var(--soft);color:var(--brand2)}.badge.gray{background:#f3f4f6;color:#374151}.badge.green{background:#dcfce7;color:#166534}.badge.red{background:#fee2e2;color:#991b1b}.actions{display:flex;gap:8px;flex-wrap:wrap}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.flash{margin-bottom:16px;padding:12px 14px;border-radius:14px;font-weight:800}.flash.ok{background:#dcfce7;color:#166534}.flash.error{background:#fee2e2;color:#991b1b}.empty{padding:28px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:18px;background:#fff}.option-box{border:1px solid var(--line);border-radius:18px;padding:14px;margin-bottom:12px;background:#fffaf5}.option-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-top:1px dashed #eadfce}.option-item:first-of-type{border-top:0}.help{font-size:12px;color:var(--muted);margin-top:6px}.order-detail{white-space:pre-wrap;background:#fffaf5;border:1px solid var(--line);border-radius:16px;padding:14px}.public-link{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;word-break:break-all;background:#fff7ed;border:1px solid #fed7aa;padding:8px 10px;border-radius:12px}@media(max-width:800px){.topbar__in,.page-head{display:block}.nav{margin-top:12px}.userbox{text-align:left;margin-top:10px}.col-4,.col-6,.col-8{grid-column:span 12}.form-row{grid-template-columns:1fr}.table{font-size:13px}.table thead{display:none}.table tr,.table td{display:block;border:0!important;border-radius:0!important}.table tr{background:#fff;border:1px solid var(--line);border-radius:15px;margin-bottom:10px;overflow:hidden}.table td{padding:10px 12px}.actions{margin-top:8px}}
.signup-card{width:min(560px,100%)}.signup-page{align-items:start;padding-top:34px}.login-card .actions{display:flex;gap:10px;flex-wrap:wrap}.login-card .actions .btn{min-width:130px}

/* =============================
   MOBILE FIRST APP OVERRIDES
   TuMenúDelDía
============================= */
html{min-height:100%;background:#fffaf4}body{min-height:100%;overflow-x:hidden}.login-page{min-height:100dvh;width:100%;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important;background:radial-gradient(circle at top,#fff4df 0,#fffaf4 46%,#ffffff 100%)}.signup-page{align-items:center!important;padding-top:18px!important}.login-card{width:min(430px,calc(100vw - 32px))!important;margin:0 auto!important;border-radius:28px!important;padding:26px!important;box-shadow:0 24px 70px rgba(67,20,7,.12)!important}.signup-card{width:min(480px,calc(100vw - 32px))!important}.login-brand{font-size:28px!important;letter-spacing:-.035em;margin-bottom:20px!important}.login-card label{font-size:12px!important;margin:13px 0 7px!important}.login-card input,.login-card select,.login-card textarea{min-height:46px;border-radius:15px!important;font-size:16px}.login-card .actions{display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important;margin-top:18px!important}.login-card .actions .btn{width:100%;min-width:0!important;height:46px;border-radius:15px!important}.btn{min-height:42px}.topbar{position:sticky;top:0;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(231,222,210,.8);z-index:20}.topbar__in{padding:12px 14px!important;display:grid!important;grid-template-columns:1fr auto;align-items:center;gap:8px}.brand{font-size:20px!important;letter-spacing:-.04em}.userbox{font-size:11px!important;text-align:right!important;line-height:1.25}.nav{grid-column:1/-1;display:flex!important;flex-wrap:nowrap!important;gap:8px!important;overflow-x:auto;padding:5px 0 1px;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav a{white-space:nowrap;background:#fff7ed;border:1px solid #f3dfc8;border-radius:999px;padding:8px 12px!important;font-size:12px!important}.wrap{width:100%;max-width:1120px;padding:16px 14px 80px!important}.page-head{display:flex!important;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px!important}.page-head h1{font-size:24px!important;letter-spacing:-.04em}.page-head p{font-size:13px}.grid{display:grid;grid-template-columns:1fr;gap:14px}.card{border-radius:22px!important;padding:16px!important;box-shadow:0 14px 36px rgba(67,20,7,.06)!important}.col-3,.col-4,.col-6,.col-8,.col-12{grid-column:auto!important}.form-row{display:grid;grid-template-columns:1fr;gap:10px}.table{display:block;width:100%;overflow:visible}.table thead{display:none}.table tbody,.table tr,.table td{display:block;width:100%}.table tr{background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:12px;overflow:hidden;box-shadow:0 10px 26px rgba(67,20,7,.04)}.table td{border:0!important;border-radius:0!important;padding:10px 12px!important}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions .btn,.actions button,.actions select{flex:1 1 auto}@media(min-width:760px){.login-card{padding:30px!important}.grid{grid-template-columns:repeat(12,1fr)}.col-3{grid-column:span 3!important}.col-4{grid-column:span 4!important}.col-6{grid-column:span 6!important}.col-8{grid-column:span 8!important}.col-12{grid-column:span 12!important}.form-row{grid-template-columns:1fr 1fr}.table{display:table}.table thead{display:table-header-group}.table tbody{display:table-row-group}.table tr{display:table-row;box-shadow:none;border:0;background:transparent}.table td{display:table-cell;width:auto;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}.table td:first-child{border-left:1px solid var(--line)!important;border-radius:14px 0 0 14px!important}.table td:last-child{border-right:1px solid var(--line)!important;border-radius:0 14px 14px 0!important}.topbar__in{display:flex!important;max-width:1180px}.nav{grid-column:auto;flex-wrap:wrap!important;overflow:visible}.wrap{padding:22px 18px 90px!important}.page-head h1{font-size:30px!important}}
@media(max-width:430px){.login-page{padding:14px!important}.login-card{width:100%!important;padding:22px!important;border-radius:24px!important}.login-brand{font-size:25px!important}.login-card .actions{grid-template-columns:1fr!important}.page-head{display:block!important}.page-head .btn{margin-top:10px;width:100%}.userbox{display:none}.topbar__in{grid-template-columns:1fr}.brand{font-size:19px!important}}

/* Producto con imagen comprimida */
.product-cell{display:flex;align-items:center;gap:12px}
.product-thumb{width:58px;height:46px;border-radius:12px;object-fit:cover;border:1px solid var(--line);background:#fff7ed;flex:0 0 auto}
.image-preview{display:flex;align-items:center;gap:12px;margin:12px 0 4px;padding:10px;border:1px solid var(--line);border-radius:16px;background:#fffaf5;color:var(--muted);font-weight:800;font-size:13px}
.image-preview img{width:96px;height:72px;object-fit:cover;border-radius:13px;border:1px solid var(--line);background:#fff}
@media(max-width:430px){.product-cell{align-items:flex-start}.product-thumb{width:72px;height:56px}.image-preview{display:block}.image-preview img{width:100%;height:160px;margin-bottom:8px}}

.onboarding-page{align-items:flex-start!important;padding-top:24px!important}.onboarding-card{width:min(720px,calc(100vw - 32px))!important}.onboarding-card .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.onboarding-card input[type=file]{padding:10px;background:#fff}.onboarding-card .actions{grid-template-columns:1fr 150px!important}@media(max-width:720px){.onboarding-card .form-row{grid-template-columns:1fr}.onboarding-card .actions{grid-template-columns:1fr!important}.onboarding-card{padding:22px!important}}

.check-inline{display:flex!important;align-items:center;gap:10px;font-size:14px;font-weight:800;color:#473729;margin-top:14px}.check-inline input[type=checkbox]{width:18px!important;height:18px!important;min-height:0!important;flex:0 0 18px;padding:0;border-radius:6px;margin:0}


.theme-editor{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,#fffdf9 0%,#fff7ef 100%)}
.theme-editor__intro{margin-bottom:14px}
.theme-editor__eyebrow{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;background:#fff;color:var(--brand2);border:1px solid #f3dcc3;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.theme-editor__title{margin:10px 0 6px;font-size:22px;color:#2d1c10}.theme-editor__text{margin:0;color:var(--muted);font-size:14px;line-height:1.5}
.theme-editor__grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(260px,360px);gap:18px;align-items:start}
.theme-editor__controls{display:grid;gap:14px}
.theme-color-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;box-shadow:0 10px 24px rgba(77,45,10,.06)}
.theme-color-card__head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.theme-color-card__head strong{display:block;color:#2f1f13}.theme-color-card__head small{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.45}
.theme-color-card__swatch{width:48px;height:48px;border-radius:16px;border:4px solid #fff;box-shadow:0 8px 18px rgba(77,45,10,.16), inset 0 0 0 1px rgba(0,0,0,.05);flex:0 0 48px}
.theme-color-card__body{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center}.theme-color-card__picker{padding:0;width:100%;height:56px;border-radius:16px;cursor:pointer;background:#fff}.theme-color-card__hex{text-transform:lowercase;font-weight:800;letter-spacing:.04em}
.theme-preview{position:sticky;top:84px}.theme-preview__phone{background:#fff;border:1px solid #eee1d3;border-radius:28px;padding:14px;box-shadow:0 18px 38px rgba(77,45,10,.10)}
.theme-preview__cover{border-radius:24px;background:linear-gradient(160deg,var(--preview-secondary) 0%, var(--preview-primary) 100%);padding:20px 18px 28px;color:#fff;position:relative;overflow:hidden}.theme-preview__cover:after{content:'';position:absolute;inset:auto -35px -35px auto;width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,.12)}
.theme-preview__dot{width:44px;height:5px;border-radius:999px;background:rgba(255,255,255,.75);margin:0 auto 18px}.theme-preview__brand{font-size:22px;font-weight:900;line-height:1.05}.theme-preview__subtitle{margin-top:6px;font-size:13px;opacity:.92}
.theme-preview__body{padding:14px 4px 2px}.theme-preview__chips{display:flex;gap:8px;flex-wrap:wrap}.theme-preview__chip{padding:8px 12px;border-radius:999px;border:1px solid #eadbcc;background:#fff;color:#6d5847;font-weight:700;font-size:12px}.theme-preview__chip--active{background:var(--preview-primary);border-color:var(--preview-primary);color:#fff}
.theme-preview__card{margin-top:14px;background:#fffaf4;border:1px solid #efe0d0;border-radius:22px;padding:14px;display:grid;grid-template-columns:86px 1fr;gap:12px;align-items:center}.theme-preview__plate{width:86px;height:74px;border-radius:18px;background:linear-gradient(160deg,var(--preview-primary) 0%, #f7dcc0 100%)}
.theme-preview__lines span{display:block;height:11px;border-radius:999px;background:#eadbcf;margin-bottom:10px}.theme-preview__lines span:nth-child(1){width:78%}.theme-preview__lines span:nth-child(2){width:58%}.theme-preview__lines span:nth-child(3){width:65%;margin-bottom:0}
.theme-preview__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.theme-preview__btn{min-height:46px;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;box-shadow:0 10px 20px rgba(77,45,10,.10)}.theme-preview__btn--primary{background:var(--preview-primary)}.theme-preview__btn--secondary{background:var(--preview-secondary)}
@media (max-width: 960px){.theme-editor__grid{grid-template-columns:1fr}.theme-preview{position:static}.theme-preview__phone{max-width:420px;margin:0 auto}}
@media (max-width: 560px){.theme-color-card__body{grid-template-columns:1fr}.theme-color-card__picker{height:48px}}

.theme-preview__phone{background:var(--preview-bg,#f6f7fb)}
.theme-preview__body{background:var(--preview-bg,#f6f7fb);border-radius:0 0 20px 20px}


.cover-mode{display:grid;gap:8px;margin:8px 0 10px}.cover-mode__option{display:flex!important;align-items:center;gap:9px;margin:0!important;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fffaf5;font-size:13px;font-weight:900;color:#473729}.cover-preview{display:flex;align-items:center;gap:12px;margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:16px;background:#fffaf5;color:var(--muted);font-weight:800;font-size:13px}.cover-preview img{width:120px;height:68px;object-fit:cover;border-radius:13px;border:1px solid var(--line);background:#fff}

.menu-view-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.menu-view-option{display:grid!important;grid-template-columns:auto 62px 1fr;align-items:center;gap:10px;margin:0!important;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fffaf5;cursor:pointer;color:#473729;min-height:84px}
.menu-view-option.is-selected{border-color:var(--brand);background:#fff7ed;box-shadow:0 10px 24px rgba(217,119,6,.10)}
.menu-view-option input{width:18px!important;height:18px!important;min-height:0!important;padding:0;margin:0;accent-color:var(--brand)}
.menu-view-option strong{display:block;font-size:13px;color:#2d1c10}.menu-view-option small{display:block;margin-top:3px;font-size:11px;line-height:1.35;color:var(--muted);font-weight:800}
.menu-view-option__icon{display:grid;gap:4px;width:62px;height:36px;padding:5px;border-radius:12px;background:#fff;border:1px solid #f1dcc4;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.menu-view-option__icon i{display:block;border-radius:5px;background:linear-gradient(135deg,var(--brand),var(--brand2))}.menu-view-option__icon--linea{grid-template-columns:1fr}.menu-view-option__icon--grid{grid-template-columns:1fr 1fr}
@media(max-width:620px){.menu-view-options{grid-template-columns:1fr}.menu-view-option{grid-template-columns:auto 54px 1fr;min-height:0}.menu-view-option__icon{width:54px;height:44px}}


.inline-select-form{margin:0}.inline-select-form select{min-width:150px}


/* Panel organizado por módulos */
.section-title{margin:24px 0 12px;font-size:20px;color:#2d1c10;letter-spacing:-.03em}.kpi-grid{margin-bottom:10px}.module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:12px}.module-grid--compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.module-card{display:flex;flex-direction:column;gap:8px;min-height:160px;padding:18px;border:1px solid var(--line);border-radius:24px;background:#fff;text-decoration:none;color:var(--text);box-shadow:0 14px 36px rgba(67,20,7,.06);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.module-card:hover{transform:translateY(-2px);box-shadow:0 20px 42px rgba(67,20,7,.10);border-color:#f3d2a8}.module-card strong{font-size:18px;color:#27180c;letter-spacing:-.03em}.module-card small{color:var(--muted);line-height:1.45;font-weight:700}.module-card__icon{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;background:#fff7ed;border:1px solid #f3dfc8;font-size:24px}.module-card--public{background:linear-gradient(180deg,#fff 0%,#fff7ed 100%)}.module-card--disabled{opacity:.72;cursor:not-allowed}.service-list{display:grid;gap:10px;margin-top:10px}.service-list__item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fffaf5}.service-list__item strong{font-size:14px;color:#2d1c10}.nav a.active{box-shadow:inset 0 0 0 1px #f3d2a8}@media(max-width:980px){.module-grid,.module-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.module-card{min-height:145px}}@media(max-width:560px){.module-grid,.module-grid--compact{grid-template-columns:1fr}.module-card{min-height:0}.section-title{font-size:18px}}


/* Ajuste cuadrícula compacta configuración del menú */
.public-menu-btn{background:linear-gradient(135deg,var(--brand),var(--brand2))!important;color:#fff!important;border:0!important;box-shadow:0 14px 28px rgba(124,45,18,.18);white-space:nowrap}.public-menu-btn:hover{filter:brightness(.98);transform:translateY(-1px)}.public-menu-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:14px 0 20px;padding:14px 16px;border:1px solid #f3d2a8;border-radius:24px;background:linear-gradient(135deg,#fff7ed 0%,#fff 64%);box-shadow:0 16px 40px rgba(67,20,7,.08)}.public-menu-hero__icon{width:54px;height:54px;border-radius:20px;display:grid;place-items:center;background:#fff;border:1px solid #f3dfc8;font-size:27px}.public-menu-hero__text strong{display:block;font-size:18px;color:#27180c;letter-spacing:-.03em}.public-menu-hero__text small{display:block;margin-top:3px;color:var(--muted);font-weight:750;line-height:1.35}.module-grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr))!important;gap:12px!important}.module-grid--compact{grid-template-columns:repeat(auto-fit,minmax(205px,1fr))!important}.module-card{min-height:124px!important;padding:14px!important;border-radius:20px!important;gap:6px!important}.module-card__icon{width:42px!important;height:42px!important;border-radius:15px!important;font-size:21px!important}.module-card strong{font-size:16px!important}.module-card small{font-size:12px!important;line-height:1.32!important}.section-title{margin:18px 0 10px!important}.kpi-grid .card{padding:14px!important}.kpi-grid .stat{font-size:26px!important}@media(min-width:1000px){.module-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.module-grid--compact{grid-template-columns:repeat(4,minmax(0,1fr))!important}}@media(max-width:620px){.public-menu-hero{grid-template-columns:auto 1fr;padding:13px}.public-menu-hero .btn{grid-column:1/-1;width:100%}.public-menu-hero__icon{width:46px;height:46px;border-radius:17px;font-size:23px}.module-grid,.module-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))!important}.module-card{min-height:138px!important}.module-card small{font-size:11.5px!important}}@media(max-width:390px){.module-grid,.module-grid--compact{grid-template-columns:1fr!important}.module-card{min-height:0!important}}


/* Ajuste mobile 2 columnas consistente */
@media(max-width:620px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.kpi-grid .col-3,.kpi-grid .col-4,.kpi-grid .col-6,.kpi-grid .col-8,.kpi-grid .col-12{grid-column:auto!important}.kpi-grid .card{min-width:0!important;padding:12px!important;border-radius:18px!important}.kpi-grid .muted{font-size:11.5px;font-weight:800}.kpi-grid .stat{font-size:22px!important;line-height:1.1}.module-grid,.module-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.module-card{min-width:0!important;min-height:132px!important;padding:12px!important;border-radius:18px!important}.module-card__icon{width:38px!important;height:38px!important;border-radius:14px!important;font-size:20px!important}.module-card strong{font-size:14px!important;line-height:1.1}.module-card small{font-size:11px!important;line-height:1.25}.page-head{gap:10px!important}.section-title{font-size:17px!important}}@media(max-width:390px){.kpi-grid,.module-grid,.module-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))!important}.module-card{min-height:126px!important}.module-card small{font-size:10.5px!important}}

/* Premium fase 1 */
.premium-switches{display:grid;gap:10px;margin-top:8px}.premium-switch{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin:0!important;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fffaf5}.premium-switch input{width:auto!important;min-height:0!important;accent-color:var(--brand)}.premium-switch span{font-weight:900;color:#2d1c10}.premium-switch strong{font-size:12px;color:var(--muted)}.premium-price{margin-top:auto;padding-top:4px;font-weight:1000;color:var(--brand2);font-size:13px}.premium-plan-card .btn[disabled]{opacity:.75;cursor:not-allowed}.premium-plan-card{position:relative}.premium-plan-card .module-card__icon{background:#fff7ed}

/* Premium fase 2 */
.premium-card-form{margin-top:6px}.premium-card-form .btn{width:100%}.premium-request-actions{display:grid;gap:8px;margin:0}.premium-request-actions textarea{min-width:220px;min-height:58px}.premium-request-actions .actions .btn{flex:1 1 90px}

/* Premium fase 3 */
.premium-limit-box{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px;padding:10px;border:1px solid var(--line);border-radius:16px;background:#fffaf5}.premium-limit-box .badge{font-size:12px}


/* Ajustes visuales panel inicio: header limpio + KPIs tipo app */
.topbar__brandrow{display:flex;align-items:center;gap:10px;min-width:0;flex:0 0 auto}
.header-public-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 12px;border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff!important;text-decoration:none;font-size:12px;font-weight:1000;white-space:nowrap;box-shadow:0 10px 22px rgba(124,45,18,.16)}
.header-public-btn:hover{filter:brightness(.98);transform:translateY(-1px)}
.dashboard-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 12px}
.dashboard-kpis .kpi-card{min-width:0;padding:14px!important;border-radius:22px!important;background:linear-gradient(180deg,#fff 0%,#fffaf5 100%);box-shadow:0 12px 30px rgba(67,20,7,.06)!important}
.dashboard-kpis .muted{font-size:12px;font-weight:900;line-height:1.2}
.dashboard-kpis .stat{font-size:26px!important;line-height:1.12;margin-top:4px;letter-spacing:-.04em}
@media(min-width:760px){.dashboard-kpis{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:stretch}.topbar__brandrow{margin-right:4px}}
@media(max-width:620px){.topbar__brandrow{width:100%;justify-content:space-between}.header-public-btn{min-height:32px;padding:7px 10px;font-size:11.5px}.dashboard-kpis{display:flex!important;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 8px;margin:0 -2px 12px;scrollbar-width:none}.dashboard-kpis::-webkit-scrollbar{display:none}.dashboard-kpis .kpi-card{flex:0 0 145px;scroll-snap-align:start;padding:12px!important;border-radius:20px!important}.dashboard-kpis .muted{font-size:11px}.dashboard-kpis .stat{font-size:23px!important}.page-head{margin-bottom:12px!important}}
@media(max-width:430px){.topbar__in{grid-template-columns:1fr!important}.topbar__brandrow{grid-column:1/-1}.brand{font-size:18px!important}.header-public-btn{font-size:11px;padding:7px 9px}.dashboard-kpis .kpi-card{flex-basis:138px}.dashboard-kpis .stat{font-size:22px!important}}

/* Panel principal por módulos */
.page-head--plain{margin-bottom:12px!important}
.page-head--plain h1{margin-bottom:0!important}
.panel-module{background:#fff;border:1px solid var(--line);border-radius:26px;padding:16px;margin:0 0 16px;box-shadow:0 14px 34px rgba(77,45,10,.07)}
.panel-module__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}
.panel-module__head h2{margin:0;font-size:18px;line-height:1.15;color:var(--brand2);letter-spacing:-.02em}
.panel-module .dashboard-kpis{margin:0!important}
.panel-module .module-grid{margin:0!important}
.panel-module--summary{padding-bottom:14px}
@media(max-width:620px){.panel-module{border-radius:22px;padding:13px;margin-bottom:12px}.panel-module__head{margin-bottom:10px}.panel-module__head h2{font-size:16px}.panel-module .dashboard-kpis{margin:0 -2px!important;padding-bottom:4px!important}.panel-module .module-grid{gap:10px!important}.page-head--plain{margin-bottom:10px!important}}

/* =====================================================
   PANEL GENERAL · estilo app del dashboard
===================================================== */
body{background:linear-gradient(180deg,#fbf7f2 0%,#f6f2eb 100%)}
.topbar{border-bottom:1px solid rgba(231,222,210,.95);background:rgba(255,255,255,.88)!important;backdrop-filter:blur(16px)}
.topbar__in{position:relative;align-items:center!important;gap:12px!important}
.topbar__brandrow{display:flex;align-items:center;gap:12px;min-width:0}
.mobile-menu-btn,.nav-close-btn{appearance:none;border:0;background:#fff;color:#25180f;cursor:pointer}
.mobile-menu-btn{display:none;width:44px;height:44px;border-radius:16px;border:1px solid #efe3d4;box-shadow:0 10px 24px rgba(67,20,7,.06);padding:0;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.mobile-menu-btn span{display:block;width:20px;height:2px;border-radius:999px;background:#1f130c}
.topbar__actions{display:flex;align-items:center;gap:12px;margin-left:auto}
.userbox{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:8px 12px;border:1px solid #eee3d7;border-radius:18px;background:rgba(255,249,242,.9);box-shadow:0 8px 22px rgba(67,20,7,.04)}
.userbox strong{font-size:12px;color:#25180f}
.userbox span{font-size:11px;color:var(--muted)}
.header-public-btn{padding:10px 14px!important;min-height:40px;border-radius:999px;box-shadow:0 16px 28px rgba(217,119,6,.18)}
.nav-backdrop{display:none}
.nav-shell{display:flex;align-items:center;gap:14px;margin-left:4px}
.nav-shell__head,.nav-shell__public-link{display:none}
.nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 14px!important;border-radius:999px;border:1px solid transparent;background:#fff;color:#5f4937;box-shadow:0 8px 20px rgba(67,20,7,.03)}
.nav a:hover,.nav a.active{background:#fff7ed;color:#7c2d12;border-color:#f2dbc0;box-shadow:0 12px 24px rgba(217,119,6,.08)}
.nav a.logout-link{background:#fff1f2;color:#b42318;border-color:#fecdd3;box-shadow:none}
.nav a.logout-link:hover{background:#ffe4e6;color:#991b1b}
.wrap{padding-top:18px!important;padding-bottom:108px!important}
.page-head--app{margin-bottom:14px!important}
.page-head--app h1{font-size:34px!important;letter-spacing:-.045em}
.page-head--app p{font-size:14px}

.panel-summary--hero{position:relative;overflow:hidden;margin:0 0 18px;padding:22px;border-radius:30px;background:linear-gradient(135deg,#ff922f 0%,#f97316 55%,#e45b00 100%);box-shadow:0 24px 46px rgba(222,101,14,.26)}
.panel-summary--hero::before{content:"";position:absolute;inset:auto -16% -40% auto;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 68%)}
.panel-summary__head{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.panel-summary__head h2{margin:0;font-size:18px;color:#fff;letter-spacing:-.02em}
.panel-summary__filter{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.18);color:#fff;font-weight:900;backdrop-filter:blur(8px)}
.panel-summary__grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.panel-summary__grid--wide{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.summary-card{display:flex;align-items:flex-start;gap:14px;min-height:128px;padding:18px;border-radius:24px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.summary-card__icon{width:50px;height:50px;flex:0 0 auto;display:grid;place-items:center;border-radius:18px;background:rgba(255,255,255,.15);font-size:24px;color:#fff}
.summary-card__body{display:flex;flex-direction:column;gap:8px;min-width:0}
.summary-card__label{font-size:15px;font-weight:800;color:#fff;line-height:1.15}
.summary-card__value{font-size:38px;line-height:1;font-weight:1000;color:#fff;letter-spacing:-.05em;word-break:break-word}

.panel-module--cards{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.panel-module__head--dark h2{font-size:18px!important;color:#111!important}
.module-grid--dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important}
.module-card--app{position:relative;min-height:184px!important;padding:18px!important;border-radius:28px!important;background:#fff!important;border:1px solid #ece3d7!important;box-shadow:0 18px 34px rgba(67,20,7,.05)!important;gap:10px!important}
.module-card--app:hover{transform:translateY(-2px);box-shadow:0 22px 42px rgba(67,20,7,.10)!important}
.module-card__top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.module-card--app .module-card__icon{width:58px!important;height:58px!important;border-radius:50%!important;border:0!important;background:#fff7ed!important;font-size:28px!important;box-shadow:none!important}
.module-card__icon-image{display:block;width:34px;height:34px;object-fit:contain}
.module-card__arrow{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:26px;line-height:1;color:#8d7a6a}
.module-card--app strong{font-size:18px!important;line-height:1.08;color:#15120f!important}
.module-card--app small{font-size:14px!important;line-height:1.45!important;color:#60574e!important;font-weight:700!important}
.module-card--orange .module-card__icon{background:#fff1de!important;color:#ff7a00}
.module-card--mint .module-card__icon{background:#def6ef!important;color:#17a57c}
.module-card--violet .module-card__icon{background:#eee7ff!important;color:#7c5cff}
.module-card--blue .module-card__icon{background:#e8efff!important;color:#6280ff}
.module-card--yellow .module-card__icon{background:#fff0df!important;color:#f59e0b}
.module-card--sky .module-card__icon{background:#dff4fb!important;color:#0ea5e9}
.module-card--green .module-card__icon{background:#e3f8df!important;color:#22a34a}
.module-card--red .module-card__icon{background:#ffe5e5!important;color:#ef4444}
.module-card--slate .module-card__icon{background:#eef2f6!important;color:#64748b}
.module-card--featured{grid-column:1/-1;min-height:198px!important;padding:22px!important;background:linear-gradient(135deg,#ff922f 0%,#f97316 54%,#e45b00 100%)!important;border-color:#f59d46!important;box-shadow:0 24px 44px rgba(222,101,14,.24)!important}
.module-card--featured .module-card__icon{width:74px!important;height:74px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 14px 28px rgba(99,39,6,.10)!important}
.module-card--featured .module-card__icon-image{width:48px;height:48px}
.module-card--featured .module-card__arrow{background:rgba(255,255,255,.18);color:#fff}
.module-card--featured strong,.module-card--featured small{color:#fff!important}

.card{border-radius:26px!important;border-color:#ebe2d7!important;box-shadow:0 16px 32px rgba(67,20,7,.05)!important}
input,select,textarea{border-radius:15px!important;border-color:#eadfce!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
input:focus,select:focus,textarea:focus{outline:none;border-color:#f0b26d;box-shadow:0 0 0 4px rgba(249,115,22,.10)}
.btn{border-radius:15px!important;box-shadow:0 12px 24px rgba(217,119,6,.14)}
.btn.secondary{box-shadow:none}
.table th{padding-bottom:8px}
.table td{box-shadow:0 10px 22px rgba(67,20,7,.03)}
.empty{border-radius:22px;background:#fff}
.flash{border-radius:18px;box-shadow:0 12px 24px rgba(67,20,7,.06)}

.bottom-nav{display:none}

@media(min-width:980px){
  .nav-shell{margin-left:0}
}

@media(max-width:979px){
  .topbar__in{grid-template-columns:auto 1fr auto!important;gap:10px!important}
  .mobile-menu-btn{display:inline-flex}
  .topbar__brandrow{gap:10px}
  .brand{font-size:18px!important}
  .topbar__actions{justify-self:end}
  .userbox{display:none}
  .header-public-btn{display:none}
  .nav-backdrop{position:fixed;inset:0;background:rgba(22,14,10,.38);opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:40}
  .nav-shell{position:fixed;top:0;left:0;bottom:0;width:min(320px,86vw);display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:18px 16px 22px;background:#fff;box-shadow:28px 0 70px rgba(22,14,10,.18);transform:translateX(-106%);transition:transform .22s ease;z-index:50;overflow-y:auto}
  .nav-shell__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
  .nav-shell__head strong{display:block;font-size:20px;color:#24160d}
  .nav-shell__head small{display:block;margin-top:3px;font-size:12px;color:var(--muted)}
  .nav-close-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:14px;border:1px solid #eee2d2;font-size:28px;line-height:1;background:#fff8f1}
  .nav-shell__public-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-bottom:12px;padding:10px 14px;border-radius:18px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;text-decoration:none;font-weight:900;box-shadow:0 16px 30px rgba(217,119,6,.20)}
  .nav{display:grid!important;grid-template-columns:1fr;gap:8px!important;overflow:visible!important;padding:0!important;margin:0!important}
  .nav a{justify-content:flex-start;min-height:46px;padding:12px 14px!important;border-radius:18px!important;box-shadow:none;font-size:14px!important}
  body.nav-open{overflow:hidden}
  body.nav-open .nav-shell{transform:translateX(0)}
  body.nav-open .nav-backdrop{opacity:1;pointer-events:auto;display:block}
  .wrap{padding-bottom:106px!important}
  .bottom-nav{position:fixed;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));z-index:30;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:8px;padding:10px 12px;border:1px solid #ebe3d8;border-radius:28px;background:rgba(255,255,255,.96);box-shadow:0 18px 44px rgba(67,20,7,.14);backdrop-filter:blur(12px)}
  .bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:56px;text-decoration:none;color:#6b635a;font-size:12px;font-weight:800;border-radius:18px}
  .bottom-nav a span{font-size:22px;line-height:1;color:inherit}
  .bottom-nav a strong{font-size:12px;color:inherit}
  .bottom-nav a.active{background:#fff7ed;color:#ea6a00;box-shadow:inset 0 0 0 1px #f4ddc3}
  .bottom-nav__fab{align-self:start;justify-self:center;display:flex!important;align-items:center!important;justify-content:center!important;width:68px;height:68px;margin-top:-30px;border-radius:50%!important;background:linear-gradient(135deg,#ff8a1a,#f56600)!important;color:#fff!important;box-shadow:0 18px 30px rgba(245,102,0,.32)!important;border:5px solid #fff;padding:0!important;overflow:hidden;position:relative}
  .bottom-nav__fab strong,.bottom-nav__fab span{display:none!important}
.bottom-nav__fab-icon{display:block;width:46px;height:46px;object-fit:contain;object-position:center center;pointer-events:none;flex:0 0 auto;transform:translateY(0)}
}

@media(max-width:760px){
  .page-head--app h1{font-size:28px!important}
  .panel-summary--hero{padding:18px;border-radius:26px}
  .panel-summary__grid,.panel-summary__grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}
  .summary-card{min-height:122px;padding:16px;border-radius:22px}
  .summary-card__value{font-size:34px}
}

@media(max-width:620px){
  .page-head--app{margin-bottom:12px!important}
  .page-head--app h1{font-size:24px!important}
  .panel-summary--hero{padding:16px;border-radius:24px;margin-bottom:14px}
  .panel-summary__head h2{font-size:17px}
  .panel-summary__filter{min-height:34px;padding:8px 12px;font-size:13px}
  .panel-summary__grid,.panel-summary__grid--wide{grid-template-columns:1fr 1fr;gap:10px}
  .summary-card{min-height:116px;padding:14px;border-radius:20px;gap:10px}
  .summary-card__icon{width:42px;height:42px;border-radius:14px;font-size:20px}
  .summary-card__label{font-size:13px}
  .summary-card__value{font-size:30px}
  .module-grid--dashboard{grid-template-columns:1fr 1fr;gap:12px!important}
  .module-card--app{min-height:176px!important;padding:16px!important;border-radius:24px!important}
  .module-card--featured{min-height:186px!important;padding:18px!important}
  .module-card--app .module-card__icon{width:52px!important;height:52px!important;font-size:24px!important}
  .module-card--app strong{font-size:16px!important}
  .module-card--app small{font-size:13px!important;line-height:1.36!important}
}

@media(max-width:420px){
  .topbar__in{padding:12px!important}
  .brand{font-size:17px!important}
  .panel-summary__grid,.panel-summary__grid--wide{grid-template-columns:1fr 1fr}
  .summary-card{min-height:112px;padding:13px}
  .summary-card__value{font-size:28px}
  .module-grid--dashboard{gap:10px!important}
  .module-card--app{min-height:168px!important;padding:14px!important;border-radius:22px!important}
  .module-card--featured{min-height:176px!important;padding:16px!important}
  .module-card--featured .module-card__icon{width:64px!important;height:64px!important}
  .module-card--featured .module-card__icon-image{width:42px;height:42px}
  .module-card--app strong{font-size:15px!important}
  .module-card--app small{font-size:12px!important}
  .bottom-nav{left:10px;right:10px;padding:10px}
  .bottom-nav__fab{width:64px;height:64px;margin-top:-28px}
  .bottom-nav__fab-icon{width:32px;height:32px}
  .bottom-nav a strong{font-size:11px}
}


/* =====================================================
   AJUSTE: resumen operativo compacto + menú hamburguesa arriba
===================================================== */
.topbar{
  z-index:9999!important;
  overflow:visible!important;
}
.topbar__in{
  overflow:visible!important;
}
.nav-shell{
  z-index:10002!important;
}
.nav-backdrop{
  z-index:10001!important;
}
body.nav-open .bottom-nav{
  z-index:10!important;
  pointer-events:none;
}

.panel-summary--hero{
  padding:16px!important;
  border-radius:24px!important;
  margin-bottom:14px!important;
  box-shadow:0 16px 34px rgba(222,101,14,.20)!important;
}
.panel-summary__head{
  margin-bottom:10px!important;
}
.panel-summary__head h2{
  font-size:17px!important;
}
.panel-summary__filter{
  min-height:32px!important;
  padding:7px 12px!important;
  font-size:13px!important;
}
.summary-card{
  min-height:88px!important;
  padding:12px!important;
  border-radius:18px!important;
  gap:10px!important;
  align-items:center!important;
}
.summary-card__icon{
  width:38px!important;
  height:38px!important;
  border-radius:13px!important;
  font-size:19px!important;
}
.summary-card__label{
  font-size:12px!important;
  line-height:1.15!important;
}
.summary-card__value{
  font-size:28px!important;
  line-height:1!important;
  margin-top:0!important;
}
.panel-summary__grid{
  gap:10px!important;
}

@media(max-width:760px){
  .panel-summary--hero{
    padding:14px!important;
    border-radius:22px!important;
  }
  .summary-card{
    min-height:82px!important;
    padding:11px!important;
  }
  .summary-card__value{
    font-size:25px!important;
  }
}

@media(max-width:620px){
  .topbar{
    z-index:9999!important;
  }
  .nav-shell{
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    z-index:10002!important;
    transform:translateX(-110%)!important;
    visibility:hidden;
  }
  body.nav-open .nav-shell{
    transform:translateX(0)!important;
    visibility:visible;
  }
  body.nav-open .nav-backdrop{
    display:block!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  .panel-summary--hero{
    padding:13px!important;
    border-radius:21px!important;
  }
  .panel-summary__head{
    margin-bottom:9px!important;
  }
  .panel-summary__grid,
  .panel-summary__grid--wide{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .summary-card{
    min-height:78px!important;
    padding:10px!important;
    border-radius:17px!important;
    gap:8px!important;
  }
  .summary-card__icon{
    width:34px!important;
    height:34px!important;
    border-radius:12px!important;
    font-size:17px!important;
  }
  .summary-card__label{
    font-size:11px!important;
  }
  .summary-card__value{
    font-size:23px!important;
  }
}

@media(max-width:390px){
  .summary-card{
    min-height:74px!important;
    padding:9px!important;
  }
  .summary-card__icon{
    width:32px!important;
    height:32px!important;
  }
  .summary-card__value{
    font-size:21px!important;
  }
}

/* =====================================================
   FIX extra: menú hamburguesa visible por completo
===================================================== */
.nav--desktop{display:flex}
.nav--mobile{display:none}
.nav-shell{display:none}
.nav-backdrop{display:none}

@media(max-width:979px){
  .nav--desktop{display:none!important}
  .nav-shell{
    display:flex!important;
    position:fixed!important;
    top:10px!important;
    left:10px!important;
    bottom:10px!important;
    width:min(320px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
    border-radius:24px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    z-index:10050!important;
    background:#fff!important;
    box-shadow:0 24px 70px rgba(22,14,10,.22)!important;
    transform:translateX(calc(-100% - 24px))!important;
    visibility:hidden!important;
    opacity:1!important;
  }
  .nav-backdrop{
    position:fixed!important;
    inset:0!important;
    display:block!important;
    background:rgba(22,14,10,.40)!important;
    opacity:0!important;
    pointer-events:none!important;
    z-index:10040!important;
  }
  body.nav-open .nav-shell{
    transform:translateX(0)!important;
    visibility:visible!important;
  }
  body.nav-open .nav-backdrop{
    opacity:1!important;
    pointer-events:auto!important;
  }
  .nav--mobile{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
    overflow:visible!important;
    padding:0!important;
    margin:0!important;
  }
  .nav--mobile a{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-height:46px!important;
    padding:12px 14px!important;
    border-radius:18px!important;
    border:1px solid #efe2d2!important;
    background:#fffaf5!important;
    box-shadow:none!important;
    white-space:normal!important;
  }
  .nav-shell__head{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    background:#fff!important;
    padding-bottom:10px!important;
    margin-bottom:12px!important;
  }
}


/* =====================================================
   UNIFICACIÓN VISUAL ADMIN · estilo app para módulos
   Cambios solo de apariencia: no altera formularios ni lógica.
===================================================== */
body{
  background:
    radial-gradient(circle at top left, rgba(255,244,225,.85) 0, rgba(255,250,244,0) 34%),
    linear-gradient(180deg,#fffaf4 0%,#f7f2ec 100%)!important;
}
.wrap{
  max-width:1140px!important;
}
.page-head{
  position:relative;
  align-items:center!important;
  padding:2px 2px 0!important;
}
.page-head h1{
  color:#17120e!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.page-head p{
  max-width:720px;
  color:#766d61!important;
  font-weight:750!important;
  line-height:1.35!important;
}
.page-head .actions{
  justify-content:flex-end;
}
.page-head .btn.secondary{
  background:#fff!important;
  border-color:#eadfce!important;
  color:#5b3820!important;
}
.card{
  position:relative;
  background:linear-gradient(180deg,#fff 0%,#fffdfb 100%)!important;
  border:1px solid #ebe2d7!important;
  border-radius:26px!important;
  box-shadow:0 18px 38px rgba(67,20,7,.055)!important;
}
.card > h2,
.card form > h2,
.card > form > h2{
  margin:0 0 14px!important;
  font-size:18px!important;
  line-height:1.16!important;
  color:#17120e!important;
  letter-spacing:-.035em!important;
}
.card > h2::after,
.card form > h2::after,
.card > form > h2::after{
  content:"";
  display:block;
  width:46px;
  height:4px;
  margin-top:9px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--brand),rgba(217,119,6,.20));
}
.grid{
  gap:14px!important;
}
.kpi-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:12px!important;
  margin:0 0 16px!important;
}
.kpi-grid .card{
  min-height:104px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  padding:16px!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#fff 0%,#fff7ed 100%)!important;
}
.kpi-grid .card::before{
  content:"";
  position:absolute;
  right:14px;
  top:14px;
  width:34px;
  height:34px;
  border-radius:50%;
  background:rgba(217,119,6,.10);
}
.kpi-grid .muted{
  max-width:calc(100% - 42px);
  font-size:12px!important;
  line-height:1.15!important;
  font-weight:900!important;
  color:#7a6f63!important;
}
.kpi-grid .stat{
  margin-top:10px!important;
  font-size:31px!important;
  line-height:1!important;
  color:#321b0c!important;
  letter-spacing:-.06em!important;
}
.module-grid:not(.module-grid--dashboard){
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:14px!important;
  margin:0 0 18px!important;
}
.module-grid:not(.module-grid--dashboard) .module-card{
  position:relative!important;
  min-height:176px!important;
  padding:18px!important;
  border-radius:28px!important;
  border:1px solid #ece3d7!important;
  background:#fff!important;
  box-shadow:0 18px 34px rgba(67,20,7,.05)!important;
  overflow:hidden!important;
}
.module-grid:not(.module-grid--dashboard) .module-card::after{
  content:"›";
  position:absolute;
  top:18px;
  right:18px;
  width:28px;
  height:28px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:26px;
  line-height:1;
  color:#8d7a6a;
  background:#fffaf5;
}
.module-grid:not(.module-grid--dashboard) .module-card--disabled::after{
  content:"";
  display:none;
}
.module-grid:not(.module-grid--dashboard) .module-card__icon{
  width:58px!important;
  height:58px!important;
  border-radius:50%!important;
  border:0!important;
  background:#fff1de!important;
  color:#ff7a00;
  font-size:27px!important;
}
.module-grid:not(.module-grid--dashboard) .module-card:nth-child(2n) .module-card__icon{background:#def6ef!important;color:#17a57c}
.module-grid:not(.module-grid--dashboard) .module-card:nth-child(3n) .module-card__icon{background:#eee7ff!important;color:#7c5cff}
.module-grid:not(.module-grid--dashboard) .module-card:nth-child(4n) .module-card__icon{background:#e8efff!important;color:#6280ff}
.module-grid:not(.module-grid--dashboard) .module-card strong{
  margin-top:4px!important;
  font-size:18px!important;
  line-height:1.08!important;
  color:#15120f!important;
  letter-spacing:-.035em!important;
}
.module-grid:not(.module-grid--dashboard) .module-card small{
  font-size:13.5px!important;
  line-height:1.38!important;
  color:#60574e!important;
  font-weight:760!important;
}
.section-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:22px 0 12px!important;
  font-size:20px!important;
  color:#17120e!important;
}
.section-title::before{
  content:"";
  width:12px;
  height:12px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--brand),var(--brand2));
  box-shadow:0 0 0 5px rgba(217,119,6,.10);
}
.table{
  border-spacing:0 10px!important;
}
.table th{
  color:#7a6f63!important;
  font-weight:1000!important;
  letter-spacing:.02em!important;
}
.table td{
  background:#fff!important;
  box-shadow:0 12px 24px rgba(67,20,7,.035)!important;
}
.inline-select-form select,
.table select{
  min-height:40px!important;
  border-radius:14px!important;
}
.actions{
  align-items:center!important;
}
.actions .btn.small,
.table .btn.small{
  min-height:36px!important;
  border-radius:13px!important;
}
.badge{
  min-height:26px!important;
  border-radius:999px!important;
}
.empty{
  border:1px dashed #eadfce!important;
  background:linear-gradient(180deg,#fff 0%,#fffaf5 100%)!important;
  color:#7a6f63!important;
  font-weight:800!important;
}
.option-box,
.service-list__item,
.premium-limit-box,
.cover-mode__option,
.menu-view-option,
.theme-color-card{
  border-color:#eadfce!important;
  background:#fffaf5!important;
  border-radius:20px!important;
}
.check-inline,
.card label:has(input[type="checkbox"]),
.card label:has(input[type="radio"]){
  cursor:pointer;
}
input[type="checkbox"],
input[type="radio"]{
  accent-color:var(--brand);
}
form.card,
.card.filter-card{
  margin-bottom:16px!important;
}
.product-cell strong,
.table td strong{
  color:#1b130d!important;
}
.order-detail{
  max-width:100%;
  overflow:auto;
  border-radius:20px!important;
}
@media(max-width:979px){
  .page-head{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .page-head .actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px!important;
    width:100%;
  }
  .page-head .actions .btn,
  .page-head > .btn{
    width:100%!important;
  }
}
@media(max-width:760px){
  .wrap{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .page-head h1{
    font-size:25px!important;
  }
  .card{
    border-radius:23px!important;
    padding:15px!important;
  }
  .kpi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .kpi-grid .card{
    min-height:88px!important;
    padding:13px!important;
    border-radius:20px!important;
  }
  .kpi-grid .stat{
    font-size:24px!important;
  }
  .module-grid:not(.module-grid--dashboard){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .module-grid:not(.module-grid--dashboard) .module-card{
    min-height:166px!important;
    padding:14px!important;
    border-radius:22px!important;
  }
  .module-grid:not(.module-grid--dashboard) .module-card::after{
    top:14px;
    right:14px;
  }
  .module-grid:not(.module-grid--dashboard) .module-card__icon{
    width:50px!important;
    height:50px!important;
    font-size:23px!important;
  }
  .module-grid:not(.module-grid--dashboard) .module-card strong{
    font-size:15px!important;
  }
  .module-grid:not(.module-grid--dashboard) .module-card small{
    font-size:12px!important;
    line-height:1.32!important;
  }
  .table,
  .table tbody,
  .table tr,
  .table td{
    display:block!important;
    width:100%!important;
  }
  .table thead{
    display:none!important;
  }
  .table tr{
    border:1px solid #ebe2d7!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 16px 30px rgba(67,20,7,.055)!important;
    margin-bottom:12px!important;
    overflow:hidden!important;
  }
  .table td{
    position:relative;
    border:0!important;
    border-bottom:1px solid #f0e6db!important;
    border-radius:0!important;
    box-shadow:none!important;
    padding:12px 13px!important;
  }
  .table td:last-child{
    border-bottom:0!important;
  }
  .table td[data-label]::before{
    content:attr(data-label);
    display:block;
    margin-bottom:4px;
    font-size:10px;
    line-height:1;
    font-weight:1000;
    color:#9a8e82;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  .table td[data-label=""]::before{
    display:none;
  }
  .table .actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px!important;
  }
  .table .actions .btn,
  .table .actions button,
  .table .actions select,
  .table .actions form{
    width:100%!important;
  }
}
@media(max-width:420px){
  .kpi-grid .muted{
    font-size:11px!important;
  }
  .kpi-grid .stat{
    font-size:22px!important;
  }
  .module-grid:not(.module-grid--dashboard) .module-card{
    min-height:154px!important;
    padding:12px!important;
  }
  .module-grid:not(.module-grid--dashboard) .module-card__icon{
    width:44px!important;
    height:44px!important;
  }
  .module-grid:not(.module-grid--dashboard) .module-card small{
    font-size:11.2px!important;
  }
}

/* Flecha solo en tarjetas navegables; las tarjetas con formularios quedan limpias. */
.module-grid:not(.module-grid--dashboard) .module-card::after{display:none!important;content:""!important}
.module-grid:not(.module-grid--dashboard) a.module-card::after{
  content:"›"!important;
  display:grid!important;
  place-items:center!important;
}


/* =========================================================
   CATÁLOGO · botón circular + resumen tipo inicio
   ========================================================= */
.page-head--catalogo{margin-bottom:14px!important}
.page-head__row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.page-head--catalogo h1{margin:0}
.page-head--catalogo p{margin:8px 0 0;color:#7b6b61}
.catalogo-add-btn{
  width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;
  border-radius:999px;background:linear-gradient(180deg,#34d399 0%,#16a34a 100%);
  color:#fff!important;font-size:30px;font-weight:900;line-height:1;text-decoration:none;
  box-shadow:0 12px 22px rgba(22,163,74,.28), inset 0 1px 0 rgba(255,255,255,.22);
}
.catalogo-add-btn:hover{transform:translateY(-1px);box-shadow:0 16px 28px rgba(22,163,74,.32), inset 0 1px 0 rgba(255,255,255,.22)}
.catalogo-add-btn:focus-visible{outline:3px solid rgba(52,211,153,.28);outline-offset:3px}
.panel-summary--catalogo{margin-bottom:18px}
.panel-summary--catalogo .panel-summary__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.panel-summary--catalogo .summary-card__value{font-size:34px}

@media (max-width:760px){
  .catalogo-add-btn{width:48px;height:48px;flex-basis:48px;font-size:28px}
  .panel-summary--catalogo .panel-summary__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:520px){
  .page-head--catalogo p{font-size:13px}
  .catalogo-add-btn{width:46px;height:46px;flex-basis:46px;font-size:26px}
  .panel-summary--catalogo .summary-card__value{font-size:28px}
}

/* =========================================================
   PRODUCTOS · cards tipo app + buscador vivo
   ========================================================= */
.page-head--productos{margin-bottom:12px!important}
.productos-toolbar{margin-bottom:10px!important;padding:10px 12px!important}
.productos-toolbar label{margin:0 0 6px!important;font-size:11px!important;color:#6f6258!important;text-transform:uppercase;letter-spacing:.045em}
.productos-search{display:flex;align-items:center;gap:8px;border:1px solid #eadfce;background:#fffaf5;border-radius:16px;padding:0 11px;min-height:42px}
.productos-search span{font-size:18px;line-height:1;opacity:.75}
.productos-search input{border:0!important;background:transparent!important;padding:8px 0!important;min-height:38px!important;box-shadow:none!important;outline:0!important}
.productos-app-list{display:grid;gap:9px;margin-bottom:18px}
.producto-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;align-items:stretch;padding:9px;border:1px solid #ebe2d7;border-radius:21px;background:linear-gradient(180deg,#fff 0%,#fffdfb 100%);box-shadow:0 12px 24px rgba(67,20,7,.05);overflow:hidden}
.producto-card[hidden]{display:none!important}
.producto-photo-btn{width:76px;min-height:76px;border:0;border-radius:17px;padding:0;overflow:hidden;background:#fff7ed;box-shadow:inset 0 0 0 1px #eadfce;cursor:pointer;display:grid;place-items:center;align-self:stretch}
.producto-photo-btn img{width:100%;height:100%;object-fit:cover;display:block}
.producto-photo-placeholder{display:grid;place-items:center;width:100%;height:100%;font-size:28px;background:linear-gradient(180deg,#fff7ed 0%,#fff1de 100%)}
.producto-card__body{min-width:0;display:flex;flex-direction:column;gap:6px}
.producto-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}
.producto-card__top h2{margin:0 0 2px;font-size:15.5px;line-height:1.05;color:#17120e;letter-spacing:-.035em;font-weight:1000;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.producto-card__top p{margin:0;color:#7b6b61;font-size:11px;font-weight:800;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}
.producto-card__top strong{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:#fff7ed;color:#7c2d12;font-size:12px;line-height:1;font-weight:1000;border:1px solid #f3dfc8}
.producto-card__badges{display:flex;gap:5px;flex-wrap:wrap}
.producto-card__actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:auto}
.producto-card__actions form{margin:0;display:flex;min-width:0}
.producto-card__actions form .producto-action-btn{width:100%}
.producto-action-btn{min-height:30px!important;padding:6px 6px!important;border-radius:12px!important;background:linear-gradient(135deg,#ff922f 0%,#f97316 55%,#e45b00 100%)!important;color:#fff!important;border:0!important;box-shadow:0 8px 16px rgba(217,119,6,.16)!important;font-size:10.8px!important;line-height:1.05!important;text-align:center!important;text-decoration:none!important;white-space:nowrap!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.producto-action-btn:hover{transform:translateY(-1px);box-shadow:0 12px 20px rgba(217,119,6,.22)!important}
.producto-action-btn--opciones.is-context{background:linear-gradient(135deg,#6366f1 0%,#7c3aed 55%,#4c1d95 100%)!important;box-shadow:0 10px 18px rgba(99,102,241,.24)!important}
.producto-action-btn--opciones.is-context::before{content:'🧩';font-size:11px;line-height:1;margin-right:3px}
.productos-app-list--opciones .producto-card{border-color:#ddd6fe;box-shadow:0 12px 26px rgba(76,29,149,.08)}
.productos-no-results{margin-top:4px}
.productos-app{width:min(760px,100%);margin:0 auto 92px}
.productos-topbar{margin-bottom:14px}
.productos-topbar__add{font-family:inherit;cursor:pointer;appearance:none;-webkit-appearance:none}
.productos-topbar__add.is-active{transform:rotate(45deg);box-shadow:0 15px 26px rgba(245,102,0,.22), inset 0 1px 0 rgba(255,255,255,.24)}
.productos-tenant-card{margin-bottom:14px!important}
.productos-form-card{margin-bottom:14px!important}
.productos-form-card label:not(.categoria-switch){display:block;margin:0 0 10px!important;color:#181818!important;font-size:15px!important;line-height:1!important;font-weight:1000!important}
.productos-form-card input[type="text"],
.productos-form-card input[type="number"],
.productos-form-card input[type="search"],
.productos-form-card input:not([type]),
.productos-form-card select,
.productos-form-card textarea{
  width:100%;min-height:70px!important;border-radius:20px!important;padding:16px 20px!important;border:1px solid #e8e2dc!important;background:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 6px 16px rgba(67,20,7,.035)!important;color:#17120e!important;font-size:18px!important;font-weight:750!important;outline:0!important
}
.productos-form-card textarea{min-height:106px!important;resize:vertical;line-height:1.35!important;margin-bottom:26px!important}
.productos-form-card select{appearance:auto;-webkit-appearance:auto}
.productos-form-card input::placeholder,
.productos-form-card textarea::placeholder{color:#999;opacity:1}
.productos-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:end;margin:26px 0}
.productos-form-grid--main{grid-template-columns:minmax(0,1.2fr) minmax(190px,.8fr);margin-top:0}
.productos-photo-field{margin-top:26px;padding:18px;border:1px dashed #eadfce;border-radius:22px;background:#fffaf5}
.productos-photo-field input[type="file"]{width:100%;min-height:52px!important;padding:12px!important;border-radius:16px!important;background:#fff!important;border:1px solid #eadfce!important;font-weight:800;color:#4b3f35}
.productos-switch-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px;padding:4px 0}
.productos-switch-grid .categoria-switch{padding:14px 0!important}
.productos-responsibility{margin-top:20px;padding:14px;border-radius:20px;background:#fffaf5;border:1px solid #eadfce}
.productos-responsibility label{display:flex!important;align-items:flex-start;gap:10px;margin:0!important;font-size:13px!important;line-height:1.35!important;color:#4b3f35!important;font-weight:800!important}
.productos-responsibility input[type="checkbox"]{width:auto!important;margin-top:2px}
.productos-limit-card{display:grid;gap:12px;padding:16px;border-radius:22px;background:#fffaf5;border:1px solid #eadfce}
.productos-limit-card strong{font-size:18px;font-weight:1000;color:#17120e}
.productos-limit-card p{margin:0;color:#6f6258;font-weight:800;line-height:1.4}
.productos-toolbar{margin-bottom:10px!important;padding:10px 12px!important;border-radius:22px!important}
@media(max-width:760px){
  .productos-app{margin-bottom:94px}
  .productos-form-card{padding:22px!important;border-radius:28px!important}
  .productos-form-card input[type="text"],.productos-form-card input[type="number"],.productos-form-card input:not([type]),.productos-form-card select,.productos-form-card textarea{min-height:64px!important;font-size:17px!important;border-radius:19px!important}
  .productos-form-card textarea{min-height:98px!important}
  .productos-form-grid{gap:20px;margin:24px 0}
}
@media(max-width:520px){
  .productos-form-card{padding:18px!important;border-radius:26px!important}
  .productos-form-card label:not(.categoria-switch){font-size:13.5px!important}
  .productos-form-card input[type="text"],.productos-form-card input[type="number"],.productos-form-card input:not([type]),.productos-form-card select,.productos-form-card textarea{min-height:58px!important;padding:14px 16px!important;font-size:16px!important;border-radius:18px!important}
  .productos-form-card textarea{min-height:92px!important;margin-bottom:22px!important}
  .productos-form-grid,.productos-form-grid--main{grid-template-columns:1fr;gap:14px;margin:22px 0}
  .productos-switch-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
  .productos-switch-grid .categoria-switch{gap:10px;padding:8px 0!important}
  .productos-photo-field{margin-top:22px;padding:14px;border-radius:20px}
}
@media(max-width:390px){
  .productos-form-card{padding:16px!important}
  .productos-switch-grid{gap:10px}
  .productos-switch-grid .categoria-switch strong{font-size:13px}
}

.producto-modal{position:fixed;inset:0;z-index:90;display:none;align-items:flex-end;justify-content:center;padding:16px}
.producto-modal.is-open{display:flex}
.producto-modal__backdrop{position:absolute;inset:0;background:rgba(23,18,14,.42);backdrop-filter:blur(5px)}
.producto-modal__sheet,.producto-modal__viewer{position:relative;z-index:1;width:min(480px,100%);background:#fff;border:1px solid #eadfce;border-radius:28px;padding:18px;box-shadow:0 24px 70px rgba(23,18,14,.22)}
.producto-modal__sheet h2,.producto-modal__viewer h2{margin:0 44px 5px 0;font-size:20px;color:#17120e;letter-spacing:-.04em}
.producto-modal__sheet p{margin:0 0 14px;font-weight:800}
.producto-modal__close{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:14px;border:1px solid #eadfce;background:#fff7ed;color:#7c2d12;font-size:26px;line-height:1;cursor:pointer}
.producto-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.producto-modal__actions .producto-action-btn{font-size:13px!important;min-height:42px!important}
.producto-modal__actions .producto-action-btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}
.producto-modal__viewer{width:min(760px,100%);align-self:center}
.producto-modal__viewer img{width:100%;max-height:72vh;object-fit:contain;border-radius:20px;background:#fff7ed;border:1px solid #eadfce;margin-top:12px;display:block}
.producto-form-photo{scroll-margin-top:110px;border-radius:20px;padding:10px;background:#fffaf5;border:1px dashed #eadfce}
.producto-form-photo.photo-focus-pulse{animation:photoFocusPulse 1.25s ease-out 1}
@keyframes photoFocusPulse{0%{box-shadow:0 0 0 0 rgba(249,115,22,.34)}100%{box-shadow:0 0 0 18px rgba(249,115,22,0)}}
@media(max-width:760px){
  .productos-app-list{gap:10px}
  .producto-card{grid-template-columns:72px minmax(0,1fr);gap:9px;padding:8px;border-radius:19px}
  .producto-photo-btn{width:66px;min-height:66px;border-radius:15px}
  .producto-card__top h2{font-size:15px}
  .producto-card__top p{max-width:145px;font-size:10.8px}
  .producto-card__top strong{font-size:11.5px;padding:5px 7px}
  .producto-card__actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
  .producto-action-btn{min-height:29px!important;font-size:10.5px!important;padding:5px 4px!important;border-radius:11px!important}
}
@media(max-width:420px){
  .producto-card{grid-template-columns:66px minmax(0,1fr);padding:8px;border-radius:18px}
  .producto-photo-btn{width:66px;min-height:66px;border-radius:15px}
  .producto-card__badges .badge{font-size:10px!important;padding:3px 6px!important;min-height:21px!important}
  .producto-card__top{display:block}
  .producto-card__top strong{display:inline-flex;margin-top:6px}
  .producto-card__top p{max-width:100%}
  .producto-modal{padding:10px}
  .producto-modal__sheet,.producto-modal__viewer{border-radius:24px;padding:16px}
}

/* =========================================================
   CONFIGURACIÓN DEL MENÚ · bloques tipo app
   ========================================================= */
.page-head--config-menu{margin-bottom:12px!important}
.config-menu-hub{margin-bottom:16px!important}
.config-menu-modules{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:12px!important}
.config-module-card{min-height:172px!important}
.config-module-card small{min-height:42px}
.config-module-status{
  align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;min-height:28px;
  margin-top:auto;padding:6px 10px;border-radius:999px;background:#fff7ed;border:1px solid #f0dfcd;
  color:#6f4322;font-size:11px;font-weight:1000;line-height:1;text-transform:uppercase;letter-spacing:.035em
}
.config-module-status.is-on{background:#e8f8ef;border-color:#c6edd7;color:#15803d}
.config-module-status.is-off{background:#f3f4f6;border-color:#e5e7eb;color:#64748b}
.config-stack{display:grid;gap:14px;margin:0}
.config-section,.config-service-overview{scroll-margin-top:88px;padding:18px!important;margin-bottom:14px!important}
.config-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.config-section-head h2{margin:3px 0 0!important;font-size:20px!important;line-height:1.12!important;color:#17120e!important;letter-spacing:-.04em!important}
.config-section-head h2::after{display:none!important}
.config-section-kicker{display:inline-flex;align-items:center;min-height:22px;padding:4px 8px;border-radius:999px;background:#fff7ed;color:#9a5a0a;border:1px solid #f3dfc8;font-size:10px;font-weight:1000;text-transform:uppercase;letter-spacing:.08em}
.config-section-pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:7px 11px;border-radius:999px;background:#fffaf5;border:1px solid #eadfce;color:#6f4322;font-size:12px;font-weight:1000;white-space:nowrap}
.config-section-pill.is-on{background:#e8f8ef;border-color:#c6edd7;color:#15803d}
.config-section-pill.is-off{background:#f3f4f6;border-color:#e5e7eb;color:#64748b}
.logo-preview-admin{margin-top:10px;display:inline-grid;place-items:center;width:92px;height:92px;border:1px solid #e7ded2;border-radius:18px;padding:6px;background:#fff;box-shadow:0 12px 22px rgba(67,20,7,.05)}
.logo-preview-admin img{display:block;max-width:100%;max-height:100%;object-fit:contain;border-radius:12px}
.config-service-overview .service-list{margin:0}
.service-list--compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px!important}
.service-list--compact .service-list__item{margin:0!important;padding:11px 12px!important;border-radius:18px!important;background:#fff!important}
.banner-switch{display:inline-flex!important;align-items:center;gap:8px;margin:0!important;padding:9px 12px;border:1px solid #eadfce;border-radius:999px;background:#fff;font-weight:900;color:#7c2d12;white-space:nowrap}
.banner-switch input,.banner-remove input{width:auto!important}
.banner-preview-admin{margin-top:10px;border:1px solid #eadfce;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 12px 24px rgba(67,20,7,.06)}
.banner-preview-admin img,.banner-preview-admin video{width:100%;display:block;aspect-ratio:16/5.2;object-fit:cover;background:#111}
.banner-preview-admin--module{margin-top:14px;border-radius:24px}
.banner-hero-card{position:relative;overflow:hidden;padding:22px;border-radius:28px;background:linear-gradient(135deg,#ff922f 0%,#f97316 56%,#e45b00 100%);box-shadow:0 24px 44px rgba(222,101,14,.24);margin-bottom:14px}
.banner-hero-card::before{content:"";position:absolute;right:-72px;bottom:-96px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 68%)}
.banner-hero-card__head,.banner-hero-switch-row{position:relative;z-index:1}
.banner-hero-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.banner-hero-card__head h2{margin:6px 0 0!important;color:#fff!important;font-size:30px!important;letter-spacing:-.04em}
.banner-hero-card__head p{margin:8px 0 0;color:rgba(255,255,255,.88);font-weight:800;line-height:1.4}
.banner-hero-card .config-section-kicker{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.22);color:#fff}
.banner-hero-status{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:7px 11px;border-radius:999px;font-size:11px;font-weight:1000;line-height:1;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.banner-hero-status.is-on{background:#dcfce7;color:#166534}
.banner-hero-status.is-off{background:#fee2e2;color:#991b1b}
.banner-hero-switch-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-radius:22px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16)}
.banner-hero-switch-label{font-size:20px;font-weight:1000;color:#fff;letter-spacing:-.03em}
.switch-toggle{display:inline-flex;align-items:center;cursor:pointer}
.switch-toggle input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.switch-toggle__track{position:relative;display:inline-flex;align-items:center;width:72px;height:40px;padding:4px;border-radius:999px;background:rgba(255,255,255,.28);border:1px solid rgba(255,255,255,.28);transition:all .2s ease}
.switch-toggle__thumb{display:block;width:30px;height:30px;border-radius:50%;background:#fff;box-shadow:0 8px 18px rgba(67,20,7,.18);transform:translateX(0);transition:transform .2s ease}
.switch-toggle input:checked + .switch-toggle__track{background:#dcfce7;border-color:#bbf7d0}
.switch-toggle input:checked + .switch-toggle__track .switch-toggle__thumb{transform:translateX(30px)}
.banner-request-card{min-height:0!important;gap:10px!important}
.banner-request-card .btn{width:100%;margin-top:auto}
.banner-request-card .btn[disabled]{opacity:.78;cursor:not-allowed}
.banner-remove{margin-top:10px!important}
.banner-date-row{gap:8px!important;margin:0!important}
.menu-view-panel{margin-bottom:16px}
.theme-editor--config{margin:0!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important}
.theme-editor--config .theme-editor__grid{gap:14px!important}
.config-section--orders{padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important}
.orders-hero-card{position:relative;overflow:hidden;padding:22px;border-radius:28px;background:linear-gradient(135deg,#ff922f 0%,#f97316 56%,#e45b00 100%);box-shadow:0 24px 44px rgba(222,101,14,.24)}
.orders-hero-card::before{content:"";position:absolute;right:-72px;bottom:-96px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 68%)}
.orders-hero-card__head,.orders-hero-switch-row{position:relative;z-index:1}
.orders-hero-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.orders-hero-card__head h2{margin:6px 0 0!important;color:#fff!important;font-size:30px!important;letter-spacing:-.04em}
.orders-hero-card__head p{margin:8px 0 0;color:rgba(255,255,255,.88);font-weight:800;line-height:1.4}
.orders-hero-card .config-section-kicker{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.22);color:#fff}
.config-save-bar{position:sticky;bottom:12px;z-index:8;display:flex;justify-content:flex-end;gap:10px;margin:2px 0 4px;padding:10px;border:1px solid rgba(234,223,206,.9);border-radius:22px;background:rgba(255,255,255,.86);box-shadow:0 18px 36px rgba(67,20,7,.10);backdrop-filter:blur(10px)}
.config-save-bar .btn{min-height:44px}
@media(max-width:760px){
  .config-menu-modules{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .config-module-card{min-height:158px!important;padding:13px!important;border-radius:22px!important}
  .config-module-card small{min-height:0;font-size:11.5px!important}
  .config-module-status{font-size:9.5px;padding:5px 7px;min-height:24px}
  .config-section,.config-service-overview{padding:15px!important;border-radius:23px!important;margin-bottom:12px!important;scroll-margin-top:72px}
  .config-section-head{align-items:flex-start;margin-bottom:13px}
  .config-section-head h2{font-size:18px!important}
  .config-section-pill,.banner-switch{font-size:11px;padding:7px 9px;min-height:30px}
  .banner-hero-card,.orders-hero-card{padding:16px 16px 18px;border-radius:24px}
  .banner-hero-card__head,.orders-hero-card__head{display:grid;grid-template-columns:1fr;gap:8px}
  .banner-hero-card__head h2,.orders-hero-card__head h2{font-size:24px!important}
  .banner-hero-card__head p,.orders-hero-card__head p{font-size:12px}
  .banner-hero-switch-row,.orders-hero-switch-row{padding:14px 14px;border-radius:20px}
  .banner-hero-switch-label{font-size:17px}
  .switch-toggle__track{width:66px;height:38px}
  .switch-toggle__thumb{width:28px;height:28px}
  .switch-toggle input:checked + .switch-toggle__track .switch-toggle__thumb{transform:translateX(28px)}
  .service-list--compact{grid-template-columns:1fr 1fr}
  .banner-date-row{grid-template-columns:1fr 1fr!important}
  .config-save-bar{display:grid;grid-template-columns:1fr 1fr;bottom:8px;border-radius:20px}
  .config-save-bar .btn{width:100%}
}
@media(max-width:420px){
  .config-menu-modules{gap:9px!important}
  .config-module-card{min-height:148px!important;padding:12px!important}
  .config-module-card .module-card__icon{width:42px!important;height:42px!important;font-size:20px!important}
  .config-module-card strong{font-size:14px!important}
  .config-module-card small{font-size:10.8px!important;line-height:1.28!important}
  .service-list--compact{grid-template-columns:1fr}
  .config-section-head{display:grid;grid-template-columns:1fr;gap:8px}
  .config-section-pill,.banner-switch{justify-self:start}
  .banner-hero-switch-row{display:grid;grid-template-columns:1fr auto;align-items:center}
  .banner-hero-switch-label{font-size:16px}
}

/* =========================================================
   CONFIGURACIÓN DEL MENÚ · módulos separados
   ========================================================= */
.config-menu-hub{margin-top:6px!important}
.config-menu-hub .panel-module__head{margin-bottom:14px!important}
.config-menu-hub .module-grid--dashboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important}
.config-module-card{min-height:172px!important;text-decoration:none!important}
.config-module-status{display:inline-flex;align-items:center;align-self:flex-start;margin-top:auto;min-height:28px;padding:6px 10px;border-radius:999px;background:#f8f1e8;color:#6f5945;font-size:12px;font-weight:1000;line-height:1}
.config-module-status.is-on{background:#dcfce7;color:#166534}.config-module-status.is-off{background:#fee2e2;color:#991b1b}
.config-back-link{display:inline-flex;align-items:center;margin:0 0 7px;color:#8a6b50;text-decoration:none;font-size:13px;font-weight:1000}.config-back-link:hover{color:var(--brand2)}
.config-stack--module{max-width:980px;margin:0 auto 96px}.config-stack--module .config-section{margin-bottom:16px!important}
.config-stack--module .config-section-head{align-items:flex-start}
.config-stack--module .config-section-head h2{margin-bottom:0}
.config-save-bar{position:sticky;bottom:12px;z-index:20;display:flex;justify-content:flex-end;gap:10px;margin:18px 0 0;padding:10px;border:1px solid #eadfce;border-radius:22px;background:rgba(255,255,255,.92);box-shadow:0 16px 40px rgba(67,20,7,.12);backdrop-filter:blur(12px)}
.config-save-bar .btn{min-width:160px}
@media(max-width:760px){.config-menu-hub .module-grid--dashboard{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.config-module-card{min-height:156px!important}.config-module-status{font-size:10.8px;padding:5px 8px}.config-stack--module{margin-bottom:90px}.config-save-bar{display:grid;grid-template-columns:1fr 1fr;bottom:9px;border-radius:18px}.config-save-bar .btn{width:100%;min-width:0}}
@media(max-width:390px){.config-menu-hub .module-grid--dashboard{grid-template-columns:repeat(2,minmax(0,1fr))!important}.config-module-card{min-height:150px!important}}

/* =====================================================
   AJUSTE: icono central de barra inferior más visible
===================================================== */
@media(max-width:979px){
  .bottom-nav{
    overflow:visible!important;
    padding-top:12px!important;
  }
  .bottom-nav__fab{
    width:70px!important;
    height:70px!important;
    margin-top:-34px!important;
    border-width:5px!important;
    box-shadow:0 18px 32px rgba(245,102,0,.32)!important;
  }
  .bottom-nav__fab-icon{
    width:55px!important;
    height:55px!important;
  }
}
@media(max-width:420px){
  .bottom-nav__fab{
    width:66px!important;
    height:66px!important;
    margin-top:-31px!important;
  }
  .bottom-nav__fab-icon{
    width:51px!important;
    height:51px!important;
  }
}

/* =====================================================
   AJUSTE: botón Config. con engrane en barra inferior
===================================================== */
@media(max-width:979px){
  .bottom-nav__gear{
    width:24px!important;
    height:24px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:0!important;
    line-height:1!important;
  }
  .bottom-nav__gear svg{
    width:24px!important;
    height:24px!important;
    display:block!important;
    fill:none!important;
    stroke:currentColor!important;
  }
}
@media(max-width:420px){
  .bottom-nav__gear,
  .bottom-nav__gear svg{
    width:22px!important;
    height:22px!important;
  }
}

/* Mi cuenta + PRO */
.account-grid{margin-bottom:18px}
.pro-section{scroll-margin-top:92px;margin-top:18px}
.pro-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:6px 0 14px;padding:18px;border:1px solid #f0dcc6;border-radius:28px;background:linear-gradient(135deg,#fff7ed 0%,#fff 68%);box-shadow:0 16px 34px rgba(67,20,7,.06)}
.pro-head h2{margin:8px 0 4px;font-size:30px;letter-spacing:-.05em;color:#27180c}
.pro-head p{margin:0;color:var(--muted);font-weight:750;line-height:1.35}
.pro-pill{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 12px;border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-size:12px;font-weight:1000;letter-spacing:.08em;box-shadow:0 12px 24px rgba(217,119,6,.18)}
.pro-tenant-form{min-width:min(310px,100%)}
.pro-kpis{margin-bottom:14px}
.pro-card{margin-bottom:14px}
.pro-card h2{margin-top:0}
.pro-module-grid{margin-bottom:12px}
.premium-card-form{margin-top:auto}
@media(max-width:620px){
  .pro-head{display:block;padding:15px;border-radius:22px}
  .pro-head h2{font-size:25px;margin-top:7px}
  .pro-tenant-form{margin-top:12px;min-width:0}
  .pro-section{scroll-margin-top:76px;margin-bottom:86px}
}

/* Header: acceso rápido a Mi cuenta antes de la marca */
.header-account-link{
  width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  border-radius:14px;background:#fff7ed;border:1px solid #f1ddc5;color:#7c2d12;text-decoration:none;
  box-shadow:0 10px 20px rgba(67,20,7,.05)
}
.header-account-link svg{width:20px;height:20px;display:block}
.header-account-link:hover,.header-account-link.active{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border-color:transparent}
.brand-separator{color:#d1bca5;font-weight:900;font-size:18px;line-height:1;flex:0 0 auto}
@media(max-width:430px){
  .header-account-link{width:36px;height:36px;border-radius:13px}
  .brand-separator{font-size:16px}
  .brand{font-size:17px!important;white-space:nowrap}
}

/* Mi cuenta: módulos internos */
.account-hub{margin-bottom:16px!important}
.account-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.account-shortcut{min-height:156px!important;text-decoration:none!important}
.account-shortcut small{min-height:0!important}
.account-forms-grid{align-items:start}
.account-section{scroll-margin-top:92px}
.account-section__head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.account-section__head h2{margin:0!important;font-size:20px!important;color:#17120e;letter-spacing:-.035em}
.account-section__icon{width:42px;height:42px;display:grid;place-items:center;border-radius:15px;background:#fff7ed;font-size:21px}
@media(max-width:760px){
  .account-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
  .account-shortcut{min-height:132px!important;padding:12px!important;border-radius:22px!important}
  .account-shortcut .module-card__icon{width:42px!important;height:42px!important;font-size:20px!important}
  .account-shortcut strong{font-size:14px!important}
  .account-shortcut small{font-size:10.8px!important;line-height:1.25!important}
  .account-shortcut .module-card__arrow{width:22px;height:22px;font-size:22px}
  .account-section{scroll-margin-top:74px}
}
@media(max-width:390px){
  .account-module-grid{gap:8px!important}
  .account-shortcut{min-height:122px!important;padding:10px!important}
  .account-shortcut small{display:none!important}
}

/* Página PRO separada */
.page-head--pro{align-items:center!important;padding:18px;border:1px solid #f0dcc6;border-radius:28px;background:linear-gradient(135deg,#fff7ed 0%,#fff 68%);box-shadow:0 16px 34px rgba(67,20,7,.06)}
.page-head--pro h1{font-size:36px!important}
.page-head--pro p{font-weight:800;line-height:1.35}
.pro-kpis{margin-bottom:14px!important}
.pro-card{margin-bottom:14px!important}
.pro-card h2{margin-top:0!important}
.pro-module-grid{margin-bottom:14px!important}
@media(max-width:620px){
  .page-head--pro{display:block!important;padding:15px;border-radius:23px}
  .page-head--pro h1{font-size:30px!important}
}

/* Mi cuenta refactorizada: hub + páginas independientes */
.account-summary{margin-bottom:16px!important}
.account-summary__grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.account-summary__value{font-size:20px!important;line-height:1.1!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.account-menu-module{margin-bottom:18px!important}
.account-menu-module .account-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.account-menu-module .module-card{min-height:138px!important}
.account-detail-head{margin-bottom:12px!important}
.mini-back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:5px;color:#7c2d12;text-decoration:none;font-weight:950;font-size:13px}
.mini-back-link:hover{text-decoration:underline}
.account-detail-card{max-width:680px;margin:0 auto 18px;border-radius:26px!important;padding:18px!important}
.account-detail-card label{margin-top:12px}
.account-detail-actions{margin-top:18px!important}
@media(max-width:760px){
  .account-summary__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .account-summary__value{font-size:16px!important}
  .account-menu-module .account-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .account-menu-module .module-card{min-height:132px!important}
  .account-detail-card{border-radius:22px!important;padding:15px!important}
}
@media(max-width:390px){
  .account-menu-module .account-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .account-menu-module .module-card small{display:none!important}
}


/* =========================================================
   CREAR MENÚ CON IA · tarjetas estilo app
   ========================================================= */
.page-head--ia{align-items:center!important}
.tenant-picker-card{margin-bottom:16px!important}
.ai-credit-paper{margin-bottom:16px!important}
.ai-credit-paper__body{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:stretch}
.ai-credit-paper__grid{margin:0!important}
.ai-credit-paper__status{font-size:30px!important;letter-spacing:-.045em!important}
.ai-buy-credit-form{display:flex;align-items:stretch;margin:0}
.ai-buy-credits-btn{min-width:190px!important;min-height:100%!important;border-radius:22px!important;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%)!important;color:#fff!important;box-shadow:0 18px 32px rgba(22,163,74,.25)!important;white-space:nowrap}
.ai-buy-credits-btn:disabled{cursor:not-allowed!important;opacity:.72!important;filter:saturate(.72)!important;box-shadow:none!important}
.ai-menu-grid{align-items:start;margin-bottom:18px!important}
.ai-function-card{min-height:100%!important;overflow:hidden!important}
.ai-function-card__head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ai-function-card__head h2{margin:0!important;font-size:20px!important;line-height:1.1!important;color:#17120e!important;letter-spacing:-.035em!important}
.ai-function-card__head h2::after{display:none!important}
.ai-function-card__icon{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:18px;background:#fff1de;color:#ff7a00;font-size:24px;font-weight:1000}
.ai-function-card__icon--mint{background:#def6ef;color:#17a57c}
.ai-function-card__icon--violet{background:#eee7ff;color:#7c5cff}
.ai-function-card__icon--blue{background:#e8efff;color:#6280ff}
.ai-function-card__icon--green{background:#dcfce7;color:#16a34a}
.ai-replace-card{display:flex!important;flex-direction:column!important}
.ai-replace-card__badges{display:flex;gap:8px;flex-wrap:wrap;margin:-2px 0 12px}
.ai-replace-card__copy{margin:0 0 16px;color:#6b5c4f;font-size:14px;line-height:1.5;font-weight:800}
.ai-replace-btn{margin-top:auto;width:100%;min-height:54px!important;border-radius:18px!important;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%)!important;color:#fff!important;box-shadow:0 16px 30px rgba(22,163,74,.22)!important}
.ai-replace-btn:disabled{opacity:.68!important;cursor:not-allowed!important;box-shadow:none!important;filter:saturate(.7)!important}
.ai-limit-box{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px!important;padding:10px!important;border:1px solid #f0dcc6;border-radius:18px;background:#fff7ed}
.ai-menu-form label{font-size:12px!important;font-weight:1000!important;color:#5f4937!important}
.ai-menu-form input[type="file"]{padding:12px!important;background:#fffaf5!important;border-style:dashed!important}
.ai-check{display:flex!important;align-items:center;gap:9px;min-height:46px;margin:12px 0 0!important;padding:11px 12px;border:1px solid #eadfce;border-radius:16px;background:#fffaf5;color:#5f4937!important;font-size:13px!important;font-weight:900!important}
.ai-check input{width:auto!important;margin:0!important}
.ai-menu-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important;margin-top:14px!important}
.ai-menu-actions .btn{width:100%;min-width:0!important}
.ai-existing-form{display:grid;min-height:calc(100% - 66px);align-items:end}
.ai-existing-form .btn{min-height:54px!important;width:100%}
.ai-result-json{max-height:340px;overflow:auto;font-size:12px!important;border-radius:18px!important}
.ai-imports-table{margin-top:0!important}
@media(max-width:760px){
  .page-head--ia{display:flex!important;align-items:center!important}
  .page-head--ia .btn{width:auto!important;margin-top:0!important;white-space:nowrap}
  .ai-credit-paper__body{grid-template-columns:1fr}
  .ai-buy-credit-form{display:block}
  .ai-buy-credits-btn{width:100%!important;min-height:52px!important;border-radius:18px!important}
  .ai-menu-actions{grid-template-columns:1fr!important}
  .ai-function-card__icon{width:46px;height:46px;border-radius:16px;font-size:22px}
}
@media(max-width:420px){
  .page-head--ia h1{font-size:26px!important}
  .page-head--ia .btn{padding:9px 11px!important;font-size:12px!important}
  .ai-credit-paper .summary-card{min-height:108px!important;padding:14px!important}
  .ai-function-card{padding:14px!important;border-radius:22px!important}
  .ai-function-card__head h2{font-size:18px!important}
}

/* =========================================================
   CREAR MENÚ CON IA · ajuste agregar existente y tarjetas inicio
   ========================================================= */
.ai-credit-paper{
  padding:16px!important;
  border-radius:24px!important;
  margin-bottom:14px!important;
  box-shadow:0 18px 34px rgba(222,101,14,.20)!important;
}
.ai-credit-paper .panel-summary__head{margin-bottom:10px!important}
.ai-credit-paper__body{gap:10px!important;align-items:center!important}
.ai-credit-paper .summary-card{
  min-height:78px!important;
  padding:12px!important;
  border-radius:18px!important;
}
.ai-credit-paper .summary-card__icon{width:38px!important;height:38px!important;border-radius:14px!important;font-size:18px!important}
.ai-credit-paper .summary-card__label{font-size:11px!important;line-height:1.1!important}
.ai-credit-paper .summary-card__value{font-size:24px!important;line-height:1.05!important}
.ai-credit-paper__status{font-size:22px!important}
.ai-buy-credits-btn{min-width:170px!important;min-height:50px!important;border-radius:17px!important}
.ai-actions-panel{margin-bottom:16px!important}
.ai-action-grid .module-card{cursor:pointer;text-decoration:none!important}
.ai-module-form-card{position:relative;border:1px solid #ece3d7!important;text-align:left;font-family:inherit;appearance:none;-webkit-appearance:none}
.ai-module-form-card .ai-card-submit{position:absolute;inset:0;border:0;background:transparent;padding:0;margin:0;cursor:pointer;border-radius:inherit;color:transparent;font-size:0}
.ai-module-form-card:focus-within{outline:2px solid rgba(249,115,22,.35);outline-offset:3px}
.ai-info-grid{margin-top:0!important;margin-bottom:18px!important}
.ai-info-grid .ai-function-card{border-radius:24px!important;padding:16px!important}
@media(max-width:760px){
  .ai-credit-paper{padding:13px!important;border-radius:22px!important}
  .ai-credit-paper .panel-summary__head{display:flex!important;margin-bottom:9px!important}
  .ai-credit-paper__body{grid-template-columns:1fr!important}
  .ai-credit-paper .summary-card{min-height:70px!important;padding:10px!important}
  .ai-buy-credits-btn{width:100%!important;min-height:46px!important}
  .ai-action-grid.module-grid--dashboard{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .ai-action-grid .module-card{min-height:146px!important}
}
@media(max-width:390px){
  .ai-credit-paper .panel-summary__filter{display:none!important}
  .ai-action-grid .module-card small{display:none!important}
  .ai-action-grid .module-card{min-height:118px!important}
}


/* IA menú · limpieza de cards y paper compacto */
.ai-credit-paper.ai-credit-paper{padding:14px!important;border-radius:22px!important;margin-bottom:12px!important}
.ai-credit-paper .panel-summary__head{margin-bottom:8px!important}
.ai-credit-paper__grid.panel-summary__grid--wide{grid-template-columns:minmax(0,1fr)!important}
.ai-credit-card-main.summary-card{min-height:68px!important;padding:10px 12px!important;border-radius:17px!important;align-items:center!important}
.ai-credit-paper .summary-card__body{gap:3px!important}
.ai-actions-panel .panel-module__head{margin-bottom:8px!important}
.ai-action-grid.module-grid--dashboard{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.ai-action-grid .module-card.module-card--app{min-height:152px!important}
@media(max-width:760px){.ai-action-grid.module-grid--dashboard{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.ai-action-grid .module-card.module-card--app{min-height:132px!important;padding:13px!important}.ai-credit-paper.ai-credit-paper{padding:12px!important}.page-head--ia{margin-bottom:10px!important}}
@media(max-width:390px){.ai-action-grid .module-card.module-card--app{min-height:112px!important}.ai-action-grid .module-card small{display:none!important}}


/* =========================================================
   MI NEGOCIO · tarjetas y submódulos independientes
   ========================================================= */
.negocio-page-head{margin-bottom:14px!important}
.negocio-page-head .actions{align-items:center!important}
.negocio-module .panel-module__head{margin-bottom:12px!important}
.negocio-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.negocio-card-grid .module-card--app{min-height:168px!important}
.negocio-form-card{max-width:820px;margin-bottom:18px!important}
.negocio-form-card h2{margin-bottom:12px!important}
.negocio-actions{margin-top:18px!important;justify-content:flex-end!important}
.btn--orange-gradient{background:linear-gradient(135deg,#ff922f 0%,#f97316 54%,#e45b00 100%)!important;color:#fff!important;box-shadow:0 16px 30px rgba(222,101,14,.24)!important}
.btn--orange-gradient:hover{transform:translateY(-1px);box-shadow:0 19px 34px rgba(222,101,14,.28)!important}
.negocio-tenant-selector{margin-bottom:14px!important;max-width:520px}
.form-row--single{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media(max-width:760px){
  .negocio-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .negocio-card-grid .module-card--app{min-height:154px!important}
  .negocio-actions{display:grid!important;grid-template-columns:1fr!important}
  .negocio-actions .btn{width:100%!important}
  .form-row--single{grid-template-columns:1fr!important}
}
@media(max-width:390px){
  .negocio-card-grid .module-card--app{min-height:148px!important}
}


.config-menu-orders-form{margin:0 0 16px}
.orders-inline-panel{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-radius:24px;background:linear-gradient(135deg,#ff922f 0%,#f97316 56%,#e45b00 100%);box-shadow:0 20px 36px rgba(222,101,14,.22)}
.orders-inline-panel::before{content:"";position:absolute;right:-70px;bottom:-110px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 68%)}
.orders-inline-panel__text,.orders-inline-panel__control{position:relative;z-index:1}
.orders-inline-panel__text h2{margin:5px 0 0!important;color:#fff!important;font-size:24px!important;letter-spacing:-.04em}
.orders-inline-panel__text p{margin:5px 0 0;color:rgba(255,255,255,.88);font-weight:800;line-height:1.35}
.orders-inline-panel .config-section-kicker{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.22);color:#fff}
.orders-inline-panel__control{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:20px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16)}
.orders-inline-panel .switch-toggle__track{background:rgba(255,255,255,.30);border-color:rgba(255,255,255,.30)}
.orders-inline-panel .switch-toggle input:checked + .switch-toggle__track{background:#dcfce7;border-color:#bbf7d0}
@media(max-width:760px){.config-menu-orders-form{margin-bottom:12px}.orders-inline-panel{padding:14px 14px;border-radius:22px;gap:10px}.orders-inline-panel__text h2{font-size:20px!important}.orders-inline-panel__text p{font-size:12px}.orders-inline-panel__control{padding:8px 9px;gap:8px}.orders-inline-panel .banner-hero-status{font-size:10px;padding:6px 8px}.orders-inline-panel .switch-toggle__track{width:60px;height:34px}.orders-inline-panel .switch-toggle__thumb{width:24px;height:24px}.orders-inline-panel .switch-toggle input:checked + .switch-toggle__track .switch-toggle__thumb{transform:translateX(26px)}}
@media(max-width:430px){.orders-inline-panel{align-items:stretch;display:grid;grid-template-columns:1fr auto}.orders-inline-panel__text p{display:none}.orders-inline-panel__control{align-self:center}.orders-inline-panel .banner-hero-status{display:none}}



/* Modal posterior a creación de menú con IA */


/* Modal: menú inteligente creado */
html:has(.menu-created-modal.is-open),
body:has(.menu-created-modal.is-open){
  overflow:hidden!important;
}
body:has(.menu-created-modal.is-open) .topbar{
  z-index:1!important;
}

.menu-created-modal{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  display:none;
  align-items:center;
  justify-content:center;
  width:100vw;
  height:100dvh;
  padding:12px;
  isolation:isolate;
}
.menu-created-modal.is-open{display:flex!important}
.menu-created-modal__backdrop{
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  background:rgba(23,18,14,.62);
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
}
.menu-created-modal__card{
  position:relative!important;
  z-index:2!important;
  width:min(520px,100%);
  max-height:calc(100dvh - 24px);
  overflow:auto;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.76);
  background:
    radial-gradient(circle at 1% -1%,rgba(255,232,162,.62) 0 15%,transparent 16%),
    radial-gradient(circle at 96% 0%,rgba(255,232,221,.88) 0 15%,transparent 16%),
    linear-gradient(180deg,#fffdf9 0%,#fff8f1 48%,#ffffff 100%);
  box-shadow:0 34px 95px rgba(23,18,14,.4),0 0 0 1px rgba(126,50,15,.05);
  padding:18px 20px 18px;
  text-align:center;
  scrollbar-width:none;
}
.menu-created-modal__card::-webkit-scrollbar{display:none}

.menu-created-modal__close{
  position:absolute;
  top:12px;
  right:12px;
  z-index:5;
  width:46px;
  height:46px;
  border:0;
  border-radius:999px;
  background:#fff;
  color:#3b2117;
  font-size:36px;
  line-height:.85;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(23,18,14,.14);
}
.menu-created-modal__close:hover{transform:translateY(-1px)}

.menu-created-modal__decor{
  position:absolute;
  pointer-events:none;
  border-radius:999px;
  opacity:.72;
}
.menu-created-modal__decor--left{
  width:132px;
  height:132px;
  left:-44px;
  top:-42px;
  background:rgba(255,229,142,.5);
}
.menu-created-modal__decor--right{
  width:140px;
  height:140px;
  right:-54px;
  top:-38px;
  background:rgba(255,234,224,.84);
}
.menu-created-modal__spark{
  position:absolute;
  z-index:2;
  color:#f8ad50;
  font-size:20px;
  line-height:1;
  text-shadow:0 8px 20px rgba(248,173,80,.18);
}
.menu-created-modal__spark--one{top:72px;left:62px}
.menu-created-modal__spark--two{top:96px;left:116px;font-size:24px}
.menu-created-modal__spark--three{top:86px;right:78px;font-size:25px}

.menu-created-modal__success-wrap{
  position:relative;
  z-index:3;
  width:96px;
  height:82px;
  margin:0 auto 2px;
  display:grid;
  place-items:center;
}
.menu-created-modal__badge{
  width:70px;
  height:70px;
  border-radius:999px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,#ffbd44 0%,#ff8a19 54%,#f25a06 100%);
  box-shadow:0 16px 32px rgba(242,90,6,.27),0 0 0 10px rgba(255,138,25,.08);
}
.menu-created-modal__badge svg{
  width:48px;
  height:48px;
}
.menu-created-modal__success-rays{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.menu-created-modal__success-rays i{
  position:absolute;
  width:15px;
  height:4px;
  border-radius:999px;
  background:#fb8f36;
  display:block;
}
.menu-created-modal__success-rays i:nth-child(1){left:7px;top:22px;transform:rotate(44deg)}
.menu-created-modal__success-rays i:nth-child(2){left:0;top:48px;transform:rotate(8deg)}
.menu-created-modal__success-rays i:nth-child(3){left:18px;bottom:8px;transform:rotate(-36deg)}
.menu-created-modal__success-rays i:nth-child(4){right:7px;top:22px;transform:rotate(-44deg)}
.menu-created-modal__success-rays i:nth-child(5){right:0;top:48px;transform:rotate(-8deg)}
.menu-created-modal__success-rays i:nth-child(6){right:18px;bottom:8px;transform:rotate(36deg)}

.menu-created-modal__eyebrow{
  position:relative;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:4px auto 12px;
  padding:9px 14px;
  border-radius:999px;
  border:1px solid #a7f3d0;
  background:#ecfdf5;
  color:#157347;
  font-size:12.5px;
  font-weight:1000;
  letter-spacing:.01em;
  text-transform:uppercase;
  box-shadow:0 10px 24px rgba(34,197,94,.1);
}
.menu-created-modal__eyebrow span{
  width:23px;
  height:23px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#16a34a;
  color:#fff;
  box-shadow:0 0 0 5px rgba(34,197,94,.12);
  font-size:14px;
  line-height:1;
}

.menu-created-modal__card h2{
  position:relative;
  z-index:3;
  margin:0 auto 10px;
  max-width:445px;
  color:#261811;
  font-size:clamp(29px,7vw,42px);
  line-height:1;
  letter-spacing:-.065em;
  font-weight:1000;
}
.menu-created-modal__card h2 span{
  display:block;
  color:#e85d10;
  text-shadow:0 8px 18px rgba(232,93,16,.12);
}

.menu-created-modal__lead{
  position:relative;
  z-index:3;
  margin:0 auto 12px;
  max-width:420px;
  color:#4c4038;
  font-size:15.5px;
  line-height:1.38;
  font-weight:780;
}
.menu-created-modal__lead strong{
  color:#e85d10;
  font-weight:1000;
}

.menu-created-modal__upgrade-copy{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:40px 1fr;
  gap:10px;
  align-items:center;
  max-width:420px;
  margin:0 auto 12px;
  text-align:left;
}
.menu-created-modal__upgrade-copy p{
  margin:0;
  color:#473126;
  font-size:14.5px;
  line-height:1.32;
  font-weight:780;
}
.menu-created-modal__upgrade-copy strong{
  font-weight:1000;
  color:#2c1d17;
}
.menu-created-modal__rocket{
  width:38px;
  height:38px;
  color:#fb6b18;
  display:grid;
  place-items:center;
}
.menu-created-modal__rocket svg{width:37px;height:37px}

.menu-created-modal__stats{
  position:relative;
  z-index:3;
  display:grid;
  gap:8px;
  margin:0 auto 12px;
  max-width:424px;
}
.menu-created-modal__stat{
  display:grid;
  grid-template-columns:52px 1fr auto;
  align-items:center;
  gap:10px;
  min-height:62px;
  padding:9px 14px 9px 10px;
  border-radius:20px;
  border:1px solid #f0dfcf;
  background:rgba(255,255,255,.92);
  box-shadow:0 10px 22px rgba(23,18,14,.06);
  text-align:left;
}
.menu-created-modal__stat-icon{
  width:46px;
  height:46px;
  border-radius:16px;
  display:grid;
  place-items:center;
}
.menu-created-modal__stat-icon svg{width:30px;height:30px}
.menu-created-modal__stat-icon--search{
  background:#ffeadf;
  color:#f36b1b;
}
.menu-created-modal__stat-icon--box{
  background:#fff2d6;
  color:#f59e0b;
}
.menu-created-modal__stat-icon--shield{
  background:#efe7ff;
  color:#7c4fe0;
}
.menu-created-modal__stat-label{
  color:#402920;
  font-size:14px;
  line-height:1.05;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:-.02em;
}
.menu-created-modal__stat strong{
  color:#e85d10;
  font-size:34px;
  line-height:.9;
  font-weight:1000;
  letter-spacing:-.04em;
}

.menu-created-modal__hint{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:48px 1fr;
  gap:10px;
  align-items:center;
  max-width:424px;
  margin:0 auto 12px;
  padding:11px 13px;
  border-radius:20px;
  border:1px solid #ffc7a5;
  background:linear-gradient(135deg,#fff8f1 0%,#fff2e8 100%);
  text-align:left;
}
.menu-created-modal__hint-icon{
  width:44px;
  height:44px;
  border-radius:999px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,#ff9d28 0%,#ff6a14 100%);
  box-shadow:0 12px 22px rgba(255,106,20,.2);
}
.menu-created-modal__hint-icon svg{width:29px;height:29px}
.menu-created-modal__hint p{
  margin:0;
  color:#5c2b18;
  font-size:13.5px;
  line-height:1.3;
  font-weight:850;
}
.menu-created-modal__hint strong{
  color:#e85d10;
  font-weight:1000;
}

.menu-created-modal__hint--link{
  text-decoration:none;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.menu-created-modal__hint--link{
  grid-template-columns:48px 1fr 22px;
}
.menu-created-modal__hint--link:hover{
  transform:translateY(-1px);
  border-color:#fb923c;
  box-shadow:0 14px 28px rgba(249,115,22,.13);
}
.menu-created-modal__hint--link:active{
  transform:translateY(0);
}
.menu-created-modal__hint-arrow{
  align-self:center;
  justify-self:end;
  color:#e85d10;
  font-size:34px;
  font-weight:1000;
  line-height:.8;
}

.menu-created-modal__actions{
  position:relative;
  z-index:3;
  max-width:424px;
  margin:0 auto;
  display:grid;
  gap:8px;
}
.btn--menu-created-upgrade{
  position:relative;
  min-height:58px;
  width:100%;
  padding:12px 48px 12px 58px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#2fd56c 0%,#16b44e 52%,#0b943d 100%)!important;
  color:#fff!important;
  font-size:15.5px!important;
  font-weight:1000!important;
  letter-spacing:-.02em;
  box-shadow:0 20px 34px rgba(22,180,78,.3), inset 0 -2px 0 rgba(0,0,0,.1)!important;
}
.btn--menu-created-upgrade:hover{
  transform:translateY(-1px);
  box-shadow:0 24px 40px rgba(22,180,78,.36), inset 0 -2px 0 rgba(0,0,0,.1)!important;
}
.menu-created-modal__unlock{
  position:absolute;
  left:18px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
}
.menu-created-modal__unlock svg{width:29px;height:29px}
.menu-created-modal__chevron{
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  font-size:43px;
  line-height:.8;
  font-weight:700;
}
.menu-created-modal__plain-close{
  border:0;
  background:transparent;
  color:#7c2d12;
  font-weight:1000;
  font-size:13px;
  padding:5px 10px;
  cursor:pointer;
  text-decoration:underline;
  text-underline-offset:3px;
}
.menu-created-modal__actions:not(.has-upgrade) .menu-created-modal__plain-close{
  border:1px solid #f0dfcf;
  background:#fff;
  border-radius:16px;
  min-height:44px;
  text-decoration:none;
}

@media (max-width:560px){
  .menu-created-modal{
    align-items:center;
    padding:8px;
  }
  .menu-created-modal__card{
    width:min(100%,420px);
    max-height:calc(100dvh - 16px);
    border-radius:28px;
    padding:14px 14px 14px;
  }
  .menu-created-modal__close{
    top:10px;
    right:10px;
    width:42px;
    height:42px;
    font-size:34px;
  }
  .menu-created-modal__decor--left{
    width:112px;
    height:112px;
  }
  .menu-created-modal__decor--right{
    width:118px;
    height:118px;
  }
  .menu-created-modal__spark--one{top:64px;left:46px}
  .menu-created-modal__spark--two{top:88px;left:86px}
  .menu-created-modal__spark--three{top:82px;right:58px}
  .menu-created-modal__success-wrap{
    width:82px;
    height:70px;
  }
  .menu-created-modal__badge{
    width:60px;
    height:60px;
  }
  .menu-created-modal__badge svg{
    width:40px;
    height:40px;
  }
  .menu-created-modal__success-rays i{
    width:12px;
    height:3px;
  }
  .menu-created-modal__success-rays i:nth-child(1){left:6px;top:18px}
  .menu-created-modal__success-rays i:nth-child(2){left:1px;top:40px}
  .menu-created-modal__success-rays i:nth-child(3){left:15px;bottom:7px}
  .menu-created-modal__success-rays i:nth-child(4){right:6px;top:18px}
  .menu-created-modal__success-rays i:nth-child(5){right:1px;top:40px}
  .menu-created-modal__success-rays i:nth-child(6){right:15px;bottom:7px}
  .menu-created-modal__eyebrow{
    font-size:11px;
    padding:8px 11px;
    gap:7px;
    margin:2px auto 10px;
    max-width:100%;
  }
  .menu-created-modal__eyebrow span{
    width:21px;
    height:21px;
    font-size:13px;
  }
  .menu-created-modal__card h2{
    font-size:clamp(28px,9vw,36px);
    margin-bottom:8px;
  }
  .menu-created-modal__lead{
    font-size:14px;
    line-height:1.32;
    margin-bottom:10px;
  }
  .menu-created-modal__upgrade-copy{
    grid-template-columns:36px 1fr;
    gap:8px;
    margin-bottom:10px;
  }
  .menu-created-modal__upgrade-copy p{
    font-size:13.5px;
    line-height:1.24;
  }
  .menu-created-modal__rocket,
  .menu-created-modal__rocket svg{
    width:34px;
    height:34px;
  }
  .menu-created-modal__stats{
    gap:7px;
    margin-bottom:10px;
  }
  .menu-created-modal__stat{
    min-height:55px;
    grid-template-columns:45px 1fr auto;
    gap:8px;
    padding:7px 12px 7px 9px;
    border-radius:18px;
  }
  .menu-created-modal__stat-icon{
    width:40px;
    height:40px;
    border-radius:14px;
  }
  .menu-created-modal__stat-icon svg{
    width:26px;
    height:26px;
  }
  .menu-created-modal__stat-label{
    font-size:12.5px;
  }
  .menu-created-modal__stat strong{
    font-size:30px;
  }
  .menu-created-modal__hint{
    grid-template-columns:42px 1fr;
    gap:8px;
    padding:9px 10px;
    border-radius:18px;
    margin-bottom:10px;
  }
  .menu-created-modal__hint-icon{
    width:38px;
    height:38px;
  }
  .menu-created-modal__hint-icon svg{
    width:25px;
    height:25px;
  }
  .menu-created-modal__hint--link{
    grid-template-columns:42px 1fr 18px;
  }
  .menu-created-modal__hint-arrow{
    font-size:30px;
  }
  .menu-created-modal__hint p{
    font-size:12.5px;
    line-height:1.25;
  }
  .btn--menu-created-upgrade{
    min-height:54px;
    padding-left:52px!important;
    padding-right:38px!important;
    font-size:14px!important;
  }
  .menu-created-modal__unlock{
    left:15px;
    width:30px;
    height:30px;
  }
  .menu-created-modal__unlock svg{
    width:25px;
    height:25px;
  }
  .menu-created-modal__chevron{
    right:14px;
    font-size:38px;
  }
}

@media (max-width:380px){
  .menu-created-modal{
    padding:6px;
  }
  .menu-created-modal__card{
    max-height:calc(100dvh - 12px);
    padding:12px;
    border-radius:24px;
  }
  .menu-created-modal__spark{display:none}
  .menu-created-modal__success-wrap{
    width:72px;
    height:58px;
  }
  .menu-created-modal__badge{
    width:52px;
    height:52px;
  }
  .menu-created-modal__badge svg{
    width:34px;
    height:34px;
  }
  .menu-created-modal__eyebrow{
    font-size:10px;
    padding:7px 9px;
  }
  .menu-created-modal__card h2{
    font-size:25px;
  }
  .menu-created-modal__lead{
    font-size:12.5px;
  }
  .menu-created-modal__upgrade-copy p{
    font-size:12px;
  }
  .menu-created-modal__stat{
    min-height:48px;
    grid-template-columns:38px 1fr auto;
    gap:7px;
  }
  .menu-created-modal__stat-icon{
    width:34px;
    height:34px;
    border-radius:12px;
  }
  .menu-created-modal__stat-icon svg{
    width:22px;
    height:22px;
  }
  .menu-created-modal__stat-label{
    font-size:11px;
  }
  .menu-created-modal__stat strong{
    font-size:26px;
  }
  .menu-created-modal__hint{
    grid-template-columns:36px 1fr;
  }
  .menu-created-modal__hint--link{
    grid-template-columns:36px 1fr 16px;
  }
  .menu-created-modal__hint-arrow{
    font-size:26px;
  }
  .menu-created-modal__hint-icon{
    width:34px;
    height:34px;
  }
  .menu-created-modal__hint p{
    font-size:11.5px;
  }
  .btn--menu-created-upgrade{
    min-height:49px;
    font-size:12.5px!important;
  }
}


/* Prueba PRO 30 días: modal comercial compacto */
.badge.blue{background:#dbeafe;color:#1d4ed8}
.badge.yellow{background:#fef3c7;color:#92400e}
.menu-created-modal__card--trial{
  width:min(540px,100%);
  max-height:min(88dvh,720px);
  padding:16px 18px 16px;
}
.menu-created-modal__card--trial .menu-created-modal__success-wrap{
  margin-bottom:0;
}
.menu-created-modal__card--trial .menu-created-modal__eyebrow{
  margin-bottom:8px;
}
.menu-created-modal__card--trial h2{
  margin-bottom:8px;
  font-size:clamp(27px,6.2vw,38px);
}
.menu-created-modal__benefits{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  max-width:424px;
  margin:0 auto 10px;
}
.menu-created-modal__benefit{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:9px 12px;
  border-radius:17px;
  border:1px solid #fed7aa;
  background:rgba(255,247,237,.96);
  color:#7c2d12;
  text-align:left;
  box-shadow:0 9px 18px rgba(249,115,22,.06);
}
.menu-created-modal__benefit span{
  flex:0 0 24px;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#16a34a;
  color:#fff;
  font-size:14px;
  font-weight:1000;
}
.menu-created-modal__benefit strong{
  font-size:13.5px;
  line-height:1.16;
  font-weight:1000;
}
.menu-created-modal__safe-note{
  position:relative;
  z-index:3;
  max-width:424px;
  margin:0 auto 10px;
  padding:10px 12px;
  border-radius:18px;
  border:1px solid #bbf7d0;
  background:#f0fdf4;
  color:#14532d;
  text-align:left;
  font-size:12.8px;
  line-height:1.3;
  font-weight:760;
}
.menu-created-modal__safe-note strong{
  display:block;
  margin-bottom:2px;
  color:#166534;
  font-weight:1000;
}
.menu-created-modal__actions--trial{
  grid-template-columns:1fr 1fr;
  align-items:center;
}
.menu-created-modal__actions--trial .btn,
.menu-created-modal__actions--trial .menu-created-modal__plain-close{
  min-height:48px;
  border-radius:999px!important;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  text-decoration:none;
}
.menu-created-modal__actions--trial .menu-created-modal__plain-close{
  border:1px solid #f0dfcf;
  background:#fff;
  color:#7c2d12;
  padding:10px 12px;
}
@media (max-width:560px){
  .menu-created-modal__card--trial{
    max-height:calc(100dvh - 16px);
    padding:12px;
  }
  .menu-created-modal__card--trial h2{
    font-size:clamp(24px,8.3vw,34px);
  }
  .menu-created-modal__benefits{
    gap:6px;
    margin-bottom:8px;
  }
  .menu-created-modal__benefit{
    min-height:38px;
    padding:8px 10px;
    border-radius:15px;
  }
  .menu-created-modal__benefit strong{
    font-size:12.5px;
  }
  .menu-created-modal__safe-note{
    font-size:12px;
    margin-bottom:8px;
    padding:9px 10px;
  }
  .menu-created-modal__actions--trial{
    gap:7px;
  }
  .menu-created-modal__actions--trial .btn,
  .menu-created-modal__actions--trial .menu-created-modal__plain-close{
    min-height:45px;
    font-size:12.5px;
    padding-left:8px!important;
    padding-right:8px!important;
  }
}
@media (max-width:380px){
  .menu-created-modal__benefit{
    gap:7px;
    min-height:34px;
    padding:7px 8px;
  }
  .menu-created-modal__benefit span{
    width:21px;
    height:21px;
    flex-basis:21px;
    font-size:12px;
  }
  .menu-created-modal__benefit strong,
  .menu-created-modal__safe-note,
  .menu-created-modal__actions--trial .btn,
  .menu-created-modal__actions--trial .menu-created-modal__plain-close{
    font-size:11.5px;
  }
}

/* =========================================================
   PRO · formato app móvil / cards premium
   ========================================================= */
.pro-app-page{
  display:grid;
  gap:14px;
  max-width:980px;
  margin:0 auto;
}
.pro-app-hero{
  position:relative;
  overflow:hidden;
  padding:20px;
  border:1px solid #f0dcc6;
  border-radius:32px;
  background:
    radial-gradient(circle at 88% 8%,rgba(255,255,255,.55) 0 0,rgba(255,255,255,.55) 54px,transparent 55px),
    radial-gradient(circle at 8% 96%,rgba(255,246,231,.8) 0 0,rgba(255,246,231,.8) 110px,transparent 112px),
    linear-gradient(135deg,#ff922f 0%,#f97316 52%,#df5b00 100%);
  color:#fff;
  box-shadow:0 24px 52px rgba(217,119,6,.22);
}
.pro-app-hero::before,
.pro-app-hero::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.pro-app-hero::before{
  width:220px;
  height:220px;
  right:-90px;
  bottom:-118px;
  background:rgba(255,255,255,.18);
}
.pro-app-hero::after{
  width:86px;
  height:86px;
  top:18px;
  right:28px;
  background:rgba(255,255,255,.18);
  box-shadow:-58px 44px 0 rgba(255,255,255,.10);
}
.pro-app-hero__top,
.pro-app-metrics,
.pro-app-bar{position:relative;z-index:1}
.pro-app-hero__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.pro-app-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:28px;
  padding:6px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  color:#fff;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
}
.pro-app-hero h1{
  margin:8px 0 2px;
  color:#fff;
  font-size:46px;
  line-height:.92;
  letter-spacing:-.07em;
}
.pro-app-hero p{
  max-width:560px;
  margin:0;
  color:rgba(255,255,255,.88);
  font-size:14px;
  font-weight:800;
  line-height:1.35;
}
.pro-app-hero__side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
  min-width:min(280px,100%);
}
.pro-app-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#7c2d12;
  font-size:12px;
  font-weight:1000;
  box-shadow:0 14px 28px rgba(99,39,6,.10);
}
.pro-app-status--green{color:#166534;background:#dcfce7}
.pro-app-status--red{color:#991b1b;background:#fee2e2}
.pro-app-status--blue{color:#1e40af;background:#dbeafe}
.pro-app-status--gray{color:#374151;background:#f3f4f6}
.pro-app-tenant-form{width:100%;max-width:280px}
.pro-app-tenant-form select{
  min-height:40px!important;
  border:0!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 14px 28px rgba(99,39,6,.10)!important;
}
.pro-app-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:18px;
}
.pro-app-metric{
  min-height:88px;
  padding:13px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:23px;
  background:rgba(255,255,255,.15);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
  backdrop-filter:blur(10px);
}
.pro-app-metric span{
  display:block;
  max-width:calc(100% - 28px);
  color:rgba(255,255,255,.78);
  font-size:11.5px;
  line-height:1.15;
  font-weight:950;
}
.pro-app-metric strong{
  display:block;
  margin-top:14px;
  color:#fff;
  font-size:24px;
  line-height:1;
  letter-spacing:-.055em;
}
.pro-app-bar{
  margin-top:14px;
  padding:12px;
  border-radius:20px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.18);
}
.pro-app-bar__text{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:9px;
  color:#fff;
  font-size:12px;
  font-weight:950;
}
.pro-app-bar__track{
  height:9px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.22);
}
.pro-app-bar__track i{
  display:block;
  width:var(--progress,0%);
  height:100%;
  border-radius:inherit;
  background:#fff;
  box-shadow:0 0 18px rgba(255,255,255,.55);
}
.pro-app-notice,
.pro-app-section{
  border:1px solid #ebe2d7;
  border-radius:28px;
  background:#fff;
  box-shadow:0 18px 40px rgba(67,20,7,.06);
}
.pro-app-notice{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:13px;
  padding:16px;
}
.pro-app-notice__icon{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:19px;
  background:#fff7ed;
  font-size:25px;
}
.pro-app-notice__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:6px;
}
.pro-app-notice__head h2{
  margin:0!important;
  color:#17120e;
  font-size:20px;
  letter-spacing:-.04em;
}
.pro-app-notice__head span{
  flex:0 0 auto;
  padding:6px 10px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a3412;
  font-size:12px;
  font-weight:1000;
}
.pro-app-notice p{
  margin:0;
  color:#4c4038;
  font-size:14px;
  line-height:1.42;
  font-weight:720;
}
.pro-app-notice small{
  display:block;
  margin-top:9px;
  color:#7a6f63;
  font-size:11.5px;
  line-height:1.35;
  font-weight:750;
}
.pro-app-notice .pro-app-bar--mini{
  padding:0;
  margin-top:12px;
  border:0;
  background:#fff7ed;
}
.pro-app-notice .pro-app-bar--mini .pro-app-bar__track{
  background:#f3e1cc;
}
.pro-app-notice .pro-app-bar--mini .pro-app-bar__track i{
  background:linear-gradient(135deg,var(--brand),var(--brand2));
  box-shadow:none;
}
.pro-app-notice--paid .pro-app-notice__icon{background:#dcfce7}
.pro-app-notice--ended .pro-app-notice__icon{background:#fee2e2}
.pro-app-section{
  padding:17px;
}
.pro-app-section__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:13px;
}
.pro-app-section__head h2{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0!important;
  color:#17120e;
  font-size:21px;
  letter-spacing:-.045em;
}
.pro-app-section__head h2::before{
  content:"";
  width:11px;
  height:11px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--brand),var(--brand2));
  box-shadow:0 0 0 5px rgba(217,119,6,.10);
}
.pro-app-section__head p{
  margin:5px 0 0;
  color:#7a6f63;
  font-size:13px;
  font-weight:800;
}
.pro-empty-state{
  display:grid;
  place-items:center;
  gap:6px;
  min-height:112px;
  padding:22px;
  border:1px dashed #eadfce;
  border-radius:24px;
  background:linear-gradient(180deg,#fff 0%,#fffaf5 100%);
  text-align:center;
  color:#66594f;
}
.pro-empty-state span{font-size:30px}
.pro-empty-state strong{color:#3b2a1d;font-size:14px}
.pro-empty-state small{font-size:12px;font-weight:800;color:#8c7f73}
.pro-empty-state--wide{grid-column:1/-1}
.pro-active-list,
.pro-payment-list{
  display:grid;
  gap:10px;
}
.pro-active-card,
.pro-payment-card{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  min-height:76px;
  padding:12px;
  border:1px solid #eee4d9;
  border-radius:22px;
  background:#fffaf5;
}
.pro-active-card__icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#dcfce7;
  color:#166534;
  font-weight:1000;
}
.pro-active-card strong,
.pro-payment-card strong{
  display:block;
  color:#17120e;
  line-height:1.1;
}
.pro-active-card small,
.pro-payment-card small{
  display:block;
  margin-top:4px;
  color:#776b60;
  font-size:12px;
  font-weight:800;
}
.pro-payment-card__amount{
  font-weight:1000;
  color:#7c2d12;
  white-space:nowrap;
}
.pro-shop-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.pro-shop-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:236px;
  padding:16px;
  border:1px solid #ece3d7;
  border-radius:26px;
  background:#fff;
  box-shadow:0 16px 32px rgba(67,20,7,.045);
  overflow:hidden;
}
.pro-shop-card::after{
  content:"";
  position:absolute;
  width:118px;
  height:118px;
  right:-56px;
  top:-58px;
  border-radius:50%;
  background:#fff7ed;
  pointer-events:none;
}
.pro-shop-card__top,
.pro-shop-card__body,
.pro-shop-card__price,
.pro-shop-card__form,
.pro-shop-card__btn{position:relative;z-index:1}
.pro-shop-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.pro-shop-card__icon{
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:#fff1de;
  font-size:24px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}
.pro-shop-card:nth-child(2n) .pro-shop-card__icon{background:#def6ef}
.pro-shop-card:nth-child(3n) .pro-shop-card__icon{background:#eee7ff}
.pro-shop-card:nth-child(4n) .pro-shop-card__icon{background:#e8efff}
.pro-shop-card__tag{
  padding:6px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a3412;
  font-size:11px;
  font-weight:1000;
}
.pro-shop-card h3{
  margin:0;
  color:#17120e;
  font-size:17px;
  line-height:1.08;
  letter-spacing:-.04em;
}
.pro-shop-card p{
  margin:6px 0 0;
  color:#62574f;
  font-size:12.5px;
  line-height:1.34;
  font-weight:750;
}
.pro-shop-card__price{
  margin-top:auto;
  display:grid;
  gap:2px;
  color:#7c2d12;
}
.pro-shop-card__price strong{
  font-size:14px;
  line-height:1.15;
}
.pro-shop-card__price span,
.pro-shop-card__price small{
  color:#8a7b6d;
  font-size:11.5px;
  font-weight:900;
}
.pro-shop-card__form{margin:0!important}
.pro-shop-card__btn{
  width:100%;
  min-height:42px!important;
  border-radius:15px!important;
  box-shadow:0 14px 24px rgba(21,128,61,.16)!important;
}
.pro-shop-card--soon{
  opacity:1!important;
  background:linear-gradient(180deg,#fff 0%,#fffaf5 100%);
}
.pro-shop-card--soon .pro-shop-card__icon{
  filter:saturate(.55);
}
.pro-shop-card--soon .pro-shop-card__btn{
  box-shadow:none!important;
  opacity:.78;
}
.pro-app-section--last{margin-bottom:10px}
@media(min-width:980px){
  .pro-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .pro-app-page{gap:12px}
  .pro-app-hero{padding:16px;border-radius:28px}
  .pro-app-hero__top{display:block}
  .pro-app-hero__side{align-items:flex-start;margin-top:12px;min-width:0}
  .pro-app-tenant-form{max-width:none}
  .pro-app-hero h1{font-size:40px}
  .pro-app-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}
  .pro-app-metric{min-height:82px;padding:12px;border-radius:20px}
  .pro-app-metric strong{font-size:22px}
  .pro-app-notice{grid-template-columns:1fr;padding:15px;border-radius:25px}
  .pro-app-notice__icon{width:48px;height:48px;border-radius:17px}
  .pro-app-notice__head{align-items:flex-start}
  .pro-app-notice__head h2{font-size:18px}
  .pro-app-section{padding:15px;border-radius:25px}
  .pro-app-section__head h2{font-size:19px}
  .pro-active-card,
  .pro-payment-card{grid-template-columns:auto 1fr;align-items:start}
  .pro-active-card .badge,
  .pro-payment-card .btn,
  .pro-payment-card .badge,
  .pro-payment-card__amount{grid-column:2;justify-self:start}
  .pro-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pro-shop-card{min-height:228px;padding:13px;border-radius:23px}
  .pro-shop-card__icon{width:44px;height:44px;border-radius:16px;font-size:21px}
  .pro-shop-card h3{font-size:15px}
  .pro-shop-card p{font-size:11.5px;line-height:1.30}
  .pro-shop-card__price strong{font-size:12.5px}
  .pro-shop-card__btn{min-height:39px!important;font-size:11.5px!important;padding-left:8px!important;padding-right:8px!important}
}
@media(max-width:390px){
  .pro-app-hero{padding:14px;border-radius:24px}
  .pro-app-hero h1{font-size:36px}
  .pro-app-hero p{font-size:12.5px}
  .pro-app-metric{min-height:76px;padding:11px;border-radius:18px}
  .pro-app-metric span{font-size:10.5px}
  .pro-app-metric strong{font-size:19px}
  .pro-app-section{padding:13px}
  .pro-shop-grid{gap:9px}
  .pro-shop-card{min-height:218px;padding:12px;border-radius:21px}
  .pro-shop-card__icon{width:40px;height:40px;font-size:19px}
  .pro-shop-card h3{font-size:14px}
  .pro-shop-card p{font-size:11px}
  .pro-shop-card__price small{display:none}
}

/* Ajuste PRO compacto + acceso rápido PRO en header */
.header-icon-link{
  width:38px;
  height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border-radius:14px;
  text-decoration:none;
  box-shadow:0 10px 20px rgba(67,20,7,.05);
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, color .16s ease;
}
.header-icon-link svg{width:20px;height:20px;display:block}
.header-pro-link{
  background:linear-gradient(135deg,#fff7ed,#fff);
  border:1px solid #f1ddc5;
  color:#d97706;
}
.header-pro-link:hover,
.header-pro-link.active{
  background:linear-gradient(135deg,#ff8a1a,#f56600);
  color:#fff;
  border-color:transparent;
  box-shadow:0 14px 24px rgba(245,102,0,.20);
}
.header-icon-link:hover{transform:translateY(-1px)}

.pro-app-hero{
  padding:16px!important;
  border-radius:28px!important;
}
.pro-app-hero::before{width:180px!important;height:180px!important;right:-84px!important;bottom:-104px!important}
.pro-app-hero::after{width:70px!important;height:70px!important;top:14px!important;right:22px!important}
.pro-app-eyebrow{min-height:24px!important;padding:5px 9px!important;font-size:10.5px!important}
.pro-app-hero h1{margin:5px 0 1px!important;font-size:40px!important;line-height:.90!important}
.pro-app-hero p{font-size:12.5px!important;line-height:1.25!important;max-width:520px!important}
.pro-app-hero__top{gap:10px!important}
.pro-app-hero__side{gap:7px!important}
.pro-app-status{min-height:30px!important;padding:6px 10px!important;font-size:11px!important}
.pro-app-metrics{gap:8px!important;margin-top:12px!important}
.pro-app-metric{min-height:70px!important;padding:10px!important;border-radius:18px!important}
.pro-app-metric span{font-size:10.5px!important;line-height:1.08!important}
.pro-app-metric strong{margin-top:9px!important;font-size:20px!important}
.pro-app-bar{margin-top:10px!important;padding:9px!important;border-radius:16px!important}
.pro-app-bar__text{margin-bottom:7px!important;font-size:11px!important}
.pro-app-bar__track{height:7px!important}

@media(max-width:760px){
  .pro-app-page{gap:10px!important}
  .pro-app-hero{padding:13px!important;border-radius:24px!important}
  .pro-app-hero__side{margin-top:8px!important}
  .pro-app-hero h1{font-size:34px!important}
  .pro-app-hero p{font-size:11.5px!important}
  .pro-app-metrics{gap:7px!important;margin-top:10px!important}
  .pro-app-metric{min-height:64px!important;padding:9px!important;border-radius:16px!important}
  .pro-app-metric strong{font-size:18px!important;margin-top:7px!important}
  .pro-app-bar{margin-top:8px!important;padding:8px!important}
}

@media(max-width:430px){
  .header-icon-link{width:34px;height:34px;border-radius:12px}
  .header-icon-link svg{width:18px;height:18px}
  .topbar__brandrow{gap:8px!important}
  .brand-separator{font-size:14px!important}
  .pro-app-hero{padding:12px!important;border-radius:22px!important}
  .pro-app-hero h1{font-size:32px!important}
  .pro-app-metric{min-height:60px!important;padding:8px!important}
  .pro-app-metric span{font-size:9.8px!important}
  .pro-app-metric strong{font-size:17px!important}
}

/* =========================================================
   CATEGORÍAS · diseño tipo app compacto
   ========================================================= */
.categorias-app{
  width:min(760px,100%);
  margin:0 auto 92px;
}
.categorias-topbar{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  gap:10px;
  margin:0 0 18px;
  padding:3px 0 0;
}
.categorias-topbar h1{
  margin:0;
  text-align:center;
  color:#111;
  font-size:31px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.categorias-topbar__back,
.categorias-topbar__add{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  text-decoration:none;
  border:0;
}
.categorias-topbar__back{
  color:#111;
  border-radius:18px;
  background:transparent;
}
.categorias-topbar__back svg{
  width:34px;
  height:34px;
}
.categorias-topbar__add{
  justify-self:end;
  border-radius:17px;
  background:linear-gradient(135deg,#ff8a1a 0%,#f56600 58%,#d95500 100%);
  color:#fff!important;
  font-size:34px;
  font-weight:850;
  line-height:1;
  box-shadow:0 15px 26px rgba(245,102,0,.25), inset 0 1px 0 rgba(255,255,255,.24);
}
.categorias-topbar__add:hover,
.categorias-topbar__back:hover{
  transform:translateY(-1px);
}
.categorias-tenant-card{
  margin-bottom:14px!important;
}
.categorias-form-card{
  display:none;
  margin-bottom:28px!important;
  padding:28px!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid #efe6dc!important;
  box-shadow:0 24px 48px rgba(67,20,7,.07)!important;
}
.categorias-form-card:target,
.categorias-form-card.is-open{
  display:block;
  animation:categoriaFormIn .18s ease both;
}
@keyframes categoriaFormIn{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:translateY(0)}
}
.categorias-form-card h2{
  margin:0 0 24px!important;
  font-size:26px!important;
  line-height:1.05!important;
  color:#101010!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.categorias-form-card h2::after{
  display:none!important;
}
.categorias-form-card label:not(.categoria-switch){
  margin:0 0 10px!important;
  color:#181818!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:1000!important;
}
.categorias-form-card input[type="text"],
.categorias-form-card input[type="number"],
.categorias-form-card input:not([type]){
  min-height:70px!important;
  border-radius:20px!important;
  padding:16px 20px!important;
  border:1px solid #e8e2dc!important;
  background:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 6px 16px rgba(67,20,7,.035)!important;
  color:#17120e!important;
  font-size:18px!important;
  font-weight:750!important;
}
.categorias-form-card input::placeholder{
  color:#999;
  opacity:1;
}
.categorias-form-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,.95fr);
  gap:26px;
  align-items:end;
  margin-top:26px;
}
.categoria-switch{
  min-height:70px;
  display:flex!important;
  align-items:center;
  gap:14px;
  margin:0!important;
  padding:0!important;
  color:#17120e;
  cursor:pointer;
}
.categoria-switch input{
  position:absolute;
  width:1px!important;
  height:1px!important;
  opacity:0;
  pointer-events:none;
}
.categoria-switch__track{
  position:relative;
  width:72px;
  height:42px;
  flex:0 0 72px;
  display:inline-flex;
  align-items:center;
  padding:4px;
  border-radius:999px;
  background:#e5e7eb;
  border:1px solid #dadde2;
  box-shadow:inset 0 1px 3px rgba(17,24,39,.08);
  transition:all .2s ease;
}
.categoria-switch__thumb{
  width:32px;
  height:32px;
  display:block;
  border-radius:50%;
  background:#fff;
  box-shadow:0 8px 18px rgba(67,20,7,.16);
  transform:translateX(0);
  transition:transform .2s ease;
}
.categoria-switch input:checked + .categoria-switch__track{
  background:linear-gradient(135deg,#ff8a1a 0%,#f56600 100%);
  border-color:#f56600;
}
.categoria-switch input:checked + .categoria-switch__track .categoria-switch__thumb{
  transform:translateX(30px);
}
.categoria-switch strong{
  font-size:17px;
  font-weight:1000;
  color:#17120e;
}
.categorias-form-actions{
  display:grid;
  gap:10px;
  margin-top:26px;
}
.categorias-save-btn{
  width:100%;
  min-height:70px!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#ff7900 0%,#f56600 52%,#df5b00 100%)!important;
  color:#fff!important;
  font-size:19px!important;
  font-weight:1000!important;
  box-shadow:0 18px 30px rgba(245,102,0,.24)!important;
}
.categorias-cancel-btn{
  width:100%;
  min-height:48px!important;
  border-radius:16px!important;
}
.categorias-list-section{
  margin-top:0;
}
.categorias-list-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 5px 16px;
}
.categorias-list-head h2{
  margin:0;
  color:#111;
  font-size:26px;
  line-height:1.1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.categorias-order-label{
  display:inline-flex;
  align-items:center;
  gap:11px;
  color:#1e1813;
  font-size:18px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
}
.categorias-order-label svg{
  width:27px;
  height:27px;
}
.categorias-list-card{
  overflow:hidden;
  border-radius:28px;
  border:1px solid #ece5dc;
  background:#fff;
  box-shadow:0 18px 38px rgba(67,20,7,.055);
}
.categoria-row{
  min-height:118px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto 28px;
  align-items:center;
  gap:18px;
  padding:21px 23px;
  color:#151515!important;
  text-decoration:none!important;
  background:#fff;
  border-bottom:1px solid #eee7df;
  transition:background .18s ease, transform .18s ease;
}
.categoria-row:last-child{
  border-bottom:0;
}
.categoria-row:hover,
.categoria-row.is-editing{
  background:#fffaf5;
}
.categoria-row__handle{
  display:grid;
  place-items:center;
  color:#5e554d;
  font-size:28px;
  line-height:1;
  letter-spacing:-.16em;
  opacity:.9;
}
.categoria-row__body{
  min-width:0;
  display:grid;
  gap:8px;
}
.categoria-row__body strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111;
  font-size:22px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.04em;
}
.categoria-row__body small{
  color:#403b36;
  font-size:18px;
  line-height:1;
  font-weight:800;
}
.categoria-row__badge{
  min-width:88px;
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 15px;
  border-radius:999px;
  font-size:16px;
  line-height:1;
  font-weight:1000;
}
.categoria-row__badge.is-active{
  background:#dffbea;
  color:#0d9b4a;
}
.categoria-row__badge.is-hidden{
  background:#eef0f2;
  color:#6b7280;
}
.categoria-row__chevron{
  color:#795f47;
  font-size:43px;
  font-weight:300;
  line-height:1;
  transform:translateY(-1px);
}
.categorias-empty{
  border-radius:28px!important;
  padding:30px!important;
}

@media(max-width:760px){
  .categorias-app{
    margin-bottom:94px;
  }
  .categorias-topbar{
    grid-template-columns:48px minmax(0,1fr) 48px;
    margin-bottom:16px;
  }
  .categorias-topbar h1{
    font-size:28px;
  }
  .categorias-topbar__back,
  .categorias-topbar__add{
    width:48px;
    height:48px;
  }
  .categorias-topbar__add{
    border-radius:16px;
    font-size:31px;
  }
  .categorias-form-card{
    padding:22px!important;
    border-radius:28px!important;
    margin-bottom:24px!important;
  }
  .categorias-form-card h2{
    font-size:24px!important;
    margin-bottom:22px!important;
  }
  .categorias-form-card input[type="text"],
  .categorias-form-card input[type="number"],
  .categorias-form-card input:not([type]){
    min-height:64px!important;
    font-size:17px!important;
    border-radius:19px!important;
  }
  .categorias-form-grid{
    grid-template-columns:minmax(0,1fr) minmax(160px,.95fr);
    gap:20px;
    margin-top:24px;
  }
  .categoria-switch{
    min-height:64px;
  }
  .categorias-save-btn{
    min-height:64px!important;
    font-size:18px!important;
  }
  .categorias-list-head h2{
    font-size:24px;
  }
  .categorias-order-label{
    font-size:16px;
  }
  .categoria-row{
    min-height:105px;
    grid-template-columns:34px minmax(0,1fr) auto 24px;
    gap:14px;
    padding:18px 20px;
  }
  .categoria-row__body strong{
    font-size:20px;
  }
  .categoria-row__body small{
    font-size:16px;
  }
  .categoria-row__badge{
    min-width:82px;
    min-height:36px;
    font-size:15px;
    padding:8px 13px;
  }
  .categoria-row__chevron{
    font-size:38px;
  }
}
@media(max-width:520px){
  .categorias-app{
    width:100%;
  }
  .categorias-topbar{
    margin-top:-2px;
  }
  .categorias-form-card{
    padding:18px!important;
    border-radius:26px!important;
  }
  .categorias-form-card h2{
    font-size:22px!important;
    margin-bottom:20px!important;
  }
  .categorias-form-card label:not(.categoria-switch){
    font-size:13.5px!important;
  }
  .categorias-form-card input[type="text"],
  .categorias-form-card input[type="number"],
  .categorias-form-card input:not([type]){
    min-height:58px!important;
    padding:14px 16px!important;
    font-size:16px!important;
    border-radius:18px!important;
  }
  .categorias-form-grid{
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:22px;
  }
  .categoria-switch{
    min-height:58px;
    gap:10px;
  }
  .categoria-switch__track{
    width:64px;
    height:38px;
    flex-basis:64px;
  }
  .categoria-switch__thumb{
    width:28px;
    height:28px;
  }
  .categoria-switch input:checked + .categoria-switch__track .categoria-switch__thumb{
    transform:translateX(26px);
  }
  .categoria-switch strong{
    font-size:15px;
  }
  .categorias-save-btn{
    min-height:58px!important;
    font-size:16px!important;
    border-radius:18px!important;
  }
  .categorias-list-head{
    margin:0 4px 13px;
  }
  .categorias-list-head h2{
    font-size:22px;
  }
  .categorias-order-label{
    font-size:14px;
    gap:7px;
  }
  .categorias-order-label svg{
    width:23px;
    height:23px;
  }
  .categorias-list-card{
    border-radius:24px;
  }
  .categoria-row{
    min-height:92px;
    grid-template-columns:30px minmax(0,1fr) auto 20px;
    gap:10px;
    padding:16px 15px;
  }
  .categoria-row__handle{
    font-size:24px;
  }
  .categoria-row__body{
    gap:6px;
  }
  .categoria-row__body strong{
    font-size:17px;
  }
  .categoria-row__body small{
    font-size:14px;
  }
  .categoria-row__badge{
    min-width:70px;
    min-height:32px;
    padding:7px 10px;
    font-size:13px;
  }
  .categoria-row__chevron{
    font-size:34px;
  }
}
@media(max-width:390px){
  .categorias-form-card{
    padding:16px!important;
  }
  .categorias-form-grid{
    gap:12px;
  }
  .categoria-switch__track{
    width:58px;
    height:36px;
    flex-basis:58px;
  }
  .categoria-switch__thumb{
    width:26px;
    height:26px;
  }
  .categoria-switch input:checked + .categoria-switch__track .categoria-switch__thumb{
    transform:translateX(22px);
  }
  .categoria-switch strong{
    font-size:14px;
  }
  .categoria-row{
    grid-template-columns:26px minmax(0,1fr) auto 18px;
    gap:8px;
    padding:15px 12px;
  }
  .categoria-row__body strong{
    font-size:16px;
  }
  .categoria-row__badge{
    min-width:65px;
    font-size:12px;
    padding-left:8px;
    padding-right:8px;
  }
}

/* =========================================================
   APARIENCIA DEL MENÚ · diseño tipo app compacto
   ========================================================= */
.appearance-app{
  width:min(760px,100%);
  margin:0 auto 96px;
}
.appearance-topbar{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  gap:10px;
  margin:0 0 18px;
  padding:3px 0 0;
}
.appearance-topbar h1{
  margin:0;
  text-align:center;
  color:#111;
  font-size:31px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.appearance-topbar__back,
.appearance-topbar__spacer{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
}
.appearance-topbar__back{
  color:#111;
  border-radius:18px;
  background:transparent;
  text-decoration:none;
}
.appearance-topbar__back svg{
  width:34px;
  height:34px;
}
.appearance-topbar__back:hover{
  transform:translateY(-1px);
}
.appearance-app .filter-card{
  margin-bottom:14px!important;
  padding:18px!important;
  border-radius:24px!important;
}
.appearance-form{
  display:grid;
  gap:16px;
  max-width:none!important;
  margin:0 0 96px!important;
}
.appearance-card{
  padding:26px!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.97)!important;
  border:1px solid #efe6dc!important;
  box-shadow:0 24px 48px rgba(67,20,7,.07)!important;
  overflow:hidden;
}
.appearance-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin:0 0 22px;
}
.appearance-card__head--compact{
  margin-bottom:16px;
}
.appearance-card__head h2{
  margin:6px 0 0!important;
  color:#101010!important;
  font-size:26px!important;
  line-height:1.05!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.appearance-card__head h2::after{
  display:none!important;
}
.appearance-kicker{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a5a0a;
  border:1px solid #f3dfc8;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.appearance-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 14px;
  border-radius:999px;
  background:#fffaf5;
  border:1px solid #eadfce;
  color:#6f4322;
  font-size:13px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
}
.appearance-pill.is-random{
  background:#eaf8ff;
  border-color:#cfeeff;
  color:#0369a1;
}
.appearance-pill.is-static{
  background:#f0fdf4;
  border-color:#bbf7d0;
  color:#15803d;
}
.appearance-media-layout{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:20px;
  align-items:stretch;
}
.appearance-media-layout--cover{
  grid-template-columns:250px minmax(0,1fr);
}
.appearance-preview{
  position:relative;
  overflow:hidden;
  display:grid;
  place-items:center;
  min-height:184px;
  border-radius:24px;
  background:linear-gradient(135deg,#fff7ed 0%,#ffffff 100%);
  border:1px solid #eadfce;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 14px 26px rgba(67,20,7,.05);
}
.appearance-preview--logo{
  min-height:190px;
  padding:18px;
}
.appearance-preview--logo img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.appearance-preview--cover{
  min-height:230px;
  background:#17120e;
}
.appearance-preview--cover img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.appearance-preview--cover > span:not(.appearance-preview__placeholder){
  position:absolute;
  left:12px;
  bottom:12px;
  min-height:34px;
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.9);
  color:#17120e;
  font-size:12px;
  font-weight:1000;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
}
.appearance-preview__placeholder{
  display:grid;
  place-items:center;
  width:96px;
  height:96px;
  border-radius:28px;
  background:linear-gradient(135deg,#ff8a1a 0%,#f56600 100%);
  color:#fff;
  font-size:18px;
  font-weight:1000;
  letter-spacing:-.035em;
  box-shadow:0 18px 30px rgba(245,102,0,.24);
}
.appearance-preview--cover .appearance-preview__placeholder{
  width:120px;
  height:86px;
  border-radius:24px;
}
.appearance-field-stack{
  min-width:0;
  display:grid;
  gap:10px;
  align-content:start;
}
.appearance-field-stack label{
  margin:0!important;
  color:#181818!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:1000!important;
}
.appearance-field-stack input:not([type="radio"]),
.appearance-field-stack select,
.appearance-field-stack textarea{
  width:100%;
  min-height:64px!important;
  border-radius:20px!important;
  padding:15px 18px!important;
  border:1px solid #e8e2dc!important;
  background:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 16px rgba(67,20,7,.035)!important;
  color:#17120e!important;
  font-size:16px!important;
  font-weight:750!important;
}
.appearance-field-stack input[type="file"]{
  min-height:auto!important;
  padding:14px!important;
  background:#fffaf5!important;
  border-style:dashed!important;
  font-size:14px!important;
  cursor:pointer;
}
.appearance-field-stack input::placeholder{
  color:#999;
  opacity:1;
}
.appearance-mode-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0 0 8px;
}
.appearance-mode-option{
  position:relative;
  min-height:78px;
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr);
  align-items:center;
  gap:10px;
  margin:0!important;
  padding:14px!important;
  border-radius:20px;
  border:1px solid #eadfce;
  background:#fffaf5;
  cursor:pointer;
  transition:all .18s ease;
}
.appearance-mode-option input{
  position:absolute;
  width:1px!important;
  height:1px!important;
  opacity:0;
  pointer-events:none;
}
.appearance-mode-option__dot{
  width:24px;
  height:24px;
  display:block;
  border-radius:50%;
  border:2px solid #d2c4b5;
  background:#fff;
  box-shadow:inset 0 0 0 6px #fff;
}
.appearance-mode-option strong{
  display:block;
  color:#17120e;
  font-size:15px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.02em;
}
.appearance-mode-option small{
  display:block;
  margin-top:5px;
  color:#6b5c4f;
  font-size:12px;
  line-height:1.25;
  font-weight:800;
}
.appearance-mode-option.is-selected,
.appearance-mode-option:has(input:checked){
  border-color:#f5a45a;
  background:#fff4e7;
  box-shadow:0 12px 24px rgba(245,102,0,.10);
}
.appearance-mode-option.is-selected .appearance-mode-option__dot,
.appearance-mode-option:has(input:checked) .appearance-mode-option__dot{
  border-color:#f56600;
  background:#f56600;
}
.appearance-card--responsibility .option-grid{
  margin:0!important;
}
.appearance-card--responsibility .option-tile{
  border-radius:22px!important;
  background:#fffaf5!important;
}
.appearance-app .config-save-bar{
  position:sticky;
  bottom:12px;
  z-index:20;
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:10px;
  margin:0!important;
  padding:10px;
  border:1px solid rgba(234,223,206,.92);
  border-radius:24px;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 44px rgba(67,20,7,.14);
  backdrop-filter:blur(12px);
}
.appearance-app .config-save-bar .btn{
  width:100%;
  min-height:58px!important;
  border-radius:18px!important;
  font-size:16px!important;
  font-weight:1000!important;
}
.appearance-app .config-save-bar button.btn{
  background:linear-gradient(135deg,#ff7900 0%,#f56600 52%,#df5b00 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 30px rgba(245,102,0,.24)!important;
}
@media(max-width:760px){
  .appearance-app{
    margin-bottom:94px;
  }
  .appearance-topbar{
    grid-template-columns:48px minmax(0,1fr) 48px;
    margin-bottom:16px;
  }
  .appearance-topbar h1{
    font-size:28px;
  }
  .appearance-topbar__back,
  .appearance-topbar__spacer{
    width:48px;
    height:48px;
  }
  .appearance-card{
    padding:22px!important;
    border-radius:28px!important;
  }
  .appearance-card__head h2{
    font-size:24px!important;
  }
  .appearance-media-layout,
  .appearance-media-layout--cover{
    grid-template-columns:1fr;
    gap:16px;
  }
  .appearance-preview--logo{
    min-height:160px;
  }
  .appearance-preview--cover{
    min-height:210px;
  }
  .appearance-field-stack input:not([type="radio"]){
    min-height:60px!important;
    font-size:15px!important;
    border-radius:19px!important;
  }
  .appearance-app .config-save-bar{
    bottom:9px;
    border-radius:20px;
  }
}
@media(max-width:520px){
  .appearance-app{
    width:100%;
  }
  .appearance-topbar{
    margin-top:-2px;
  }
  .appearance-card{
    padding:18px!important;
    border-radius:26px!important;
  }
  .appearance-card__head{
    margin-bottom:18px;
  }
  .appearance-card__head h2{
    font-size:22px!important;
  }
  .appearance-kicker{
    font-size:9.5px;
    padding:5px 8px;
  }
  .appearance-pill{
    min-height:34px;
    padding:8px 11px;
    font-size:12px;
  }
  .appearance-preview--logo{
    min-height:142px;
    border-radius:22px;
  }
  .appearance-preview--cover{
    min-height:178px;
    border-radius:22px;
  }
  .appearance-preview__placeholder{
    width:82px;
    height:82px;
    border-radius:24px;
    font-size:16px;
  }
  .appearance-mode-grid{
    grid-template-columns:1fr;
  }
  .appearance-mode-option{
    min-height:68px;
    padding:12px!important;
    border-radius:18px;
  }
  .appearance-field-stack label{
    font-size:13.5px!important;
  }
  .appearance-field-stack input:not([type="radio"]){
    min-height:58px!important;
    padding:14px 16px!important;
    font-size:15px!important;
    border-radius:18px!important;
  }
  .appearance-app .config-save-bar{
    grid-template-columns:1fr;
    padding:9px;
  }
  .appearance-app .config-save-bar .btn{
    min-height:54px!important;
    font-size:15px!important;
  }
}

/* =========================================================
   ESTILO DEL MENÚ · diseño tipo app compacto
   ========================================================= */
.style-app{
  width:min(760px,100%);
  margin:0 auto 96px;
}
.style-topbar{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  gap:10px;
  margin:0 0 18px;
  padding:3px 0 0;
}
.style-topbar h1{
  margin:0;
  text-align:center;
  color:#111;
  font-size:31px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.style-topbar__back,
.style-topbar__spacer{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
}
.style-topbar__back{
  color:#111;
  border-radius:18px;
  background:transparent;
  text-decoration:none;
}
.style-topbar__back svg{
  width:34px;
  height:34px;
}
.style-topbar__back:hover{
  transform:translateY(-1px);
}
.style-app .filter-card{
  margin-bottom:14px!important;
  padding:18px!important;
  border-radius:24px!important;
}
.style-form{
  display:grid;
  gap:16px;
  max-width:none!important;
  margin:0 0 96px!important;
}
.style-card{
  padding:26px!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.97)!important;
  border:1px solid #efe6dc!important;
  box-shadow:0 24px 48px rgba(67,20,7,.07)!important;
  overflow:hidden;
}
.style-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin:0 0 22px;
}
.style-card__head h2{
  margin:6px 0 0!important;
  color:#101010!important;
  font-size:26px!important;
  line-height:1.05!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.style-card__head h2::after{
  display:none!important;
}
.style-kicker{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a5a0a;
  border:1px solid #f3dfc8;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.style-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 14px;
  border-radius:999px;
  background:#fffaf5;
  border:1px solid #eadfce;
  color:#6f4322;
  font-size:13px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
}
.style-pill--orange{
  background:#fff4e7;
  border-color:#fed7aa;
  color:#c2410c;
}
.style-view-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.style-view-option{
  position:relative;
  min-height:112px;
  display:grid!important;
  grid-template-columns:76px minmax(0,1fr);
  align-items:center;
  gap:14px;
  margin:0!important;
  padding:16px!important;
  border-radius:24px;
  border:1px solid #eadfce;
  background:#fffaf5;
  cursor:pointer;
  transition:all .18s ease;
}
.style-view-option input{
  position:absolute;
  width:1px!important;
  height:1px!important;
  opacity:0;
  pointer-events:none;
}
.style-view-option__icon{
  width:76px;
  height:56px;
  display:grid;
  gap:6px;
  padding:8px;
  border-radius:18px;
  background:#fff;
  border:1px solid #f1dcc4;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7),0 12px 22px rgba(67,20,7,.05);
}
.style-view-option__icon i{
  display:block;
  border-radius:8px;
  background:linear-gradient(135deg,#ff8a1a 0%,#f56600 100%);
}
.style-view-option__icon--linea{
  grid-template-columns:1fr;
}
.style-view-option__icon--grid{
  grid-template-columns:1fr 1fr;
}
.style-view-option strong{
  display:block;
  color:#17120e;
  font-size:17px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.025em;
}
.style-view-option small{
  display:block;
  margin-top:6px;
  color:#6b5c4f;
  font-size:12px;
  line-height:1.25;
  font-weight:850;
}
.style-view-option.is-selected,
.style-view-option:has(input:checked){
  border-color:#f5a45a;
  background:#fff4e7;
  box-shadow:0 14px 28px rgba(245,102,0,.10);
}
.style-view-option.is-selected::after,
.style-view-option:has(input:checked)::after{
  content:'✓';
  position:absolute;
  right:12px;
  top:12px;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#f56600;
  color:#fff;
  font-size:15px;
  font-weight:1000;
  box-shadow:0 10px 20px rgba(245,102,0,.20);
}
.style-color-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px;
  gap:18px;
  align-items:start;
}
.style-color-list{
  display:grid;
  gap:12px;
}
.style-color-card{
  border:1px solid #eadfce;
  border-radius:24px;
  padding:16px;
  background:#fffaf5;
  box-shadow:0 12px 24px rgba(67,20,7,.045);
}
.style-color-card__head{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 14px;
}
.style-color-card__swatch{
  width:54px;
  height:54px;
  border-radius:18px;
  border:4px solid #fff;
  box-shadow:0 10px 20px rgba(67,20,7,.14),inset 0 0 0 1px rgba(0,0,0,.06);
  flex:0 0 54px;
}
.style-color-card__head strong{
  display:block;
  color:#17120e;
  font-size:16px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.02em;
}
.style-color-card__head small{
  display:block;
  margin-top:5px;
  color:#6b5c4f;
  font-size:12px;
  line-height:1.25;
  font-weight:800;
}
.style-color-card__body{
  display:grid;
  grid-template-columns:118px minmax(0,1fr);
  gap:10px;
  align-items:center;
}
.style-color-card__picker{
  width:100%;
  height:58px!important;
  min-height:58px!important;
  padding:4px!important;
  border-radius:18px!important;
  border:1px solid #e8e2dc!important;
  background:#fff!important;
  cursor:pointer;
}
.style-color-card__hex{
  width:100%;
  min-height:58px!important;
  border-radius:18px!important;
  padding:14px 16px!important;
  border:1px solid #e8e2dc!important;
  background:#fff!important;
  color:#17120e!important;
  font-size:15px!important;
  font-weight:1000!important;
  letter-spacing:.035em;
  text-transform:lowercase;
}
.style-preview{
  position:sticky;
  top:84px;
}
.style-preview__phone{
  overflow:hidden;
  border-radius:30px;
  background:var(--preview-bg,#f6f7fb);
  border:1px solid #eadfce;
  box-shadow:0 22px 44px rgba(67,20,7,.10);
}
.style-preview__cover{
  position:relative;
  overflow:hidden;
  min-height:142px;
  padding:20px 18px 24px;
  color:#fff;
  background:linear-gradient(155deg,var(--preview-secondary) 0%,var(--preview-primary) 100%);
}
.style-preview__cover::after{
  content:'';
  position:absolute;
  right:-46px;
  bottom:-62px;
  width:142px;
  height:142px;
  border-radius:50%;
  background:rgba(255,255,255,.13);
}
.style-preview__dot{
  width:45px;
  height:5px;
  margin:0 auto 18px;
  border-radius:999px;
  background:rgba(255,255,255,.75);
}
.style-preview__brand,
.style-preview__subtitle{
  position:relative;
  z-index:1;
}
.style-preview__brand{
  font-size:21px;
  line-height:1.02;
  font-weight:1000;
  letter-spacing:-.045em;
}
.style-preview__subtitle{
  margin-top:6px;
  font-size:12px;
  font-weight:850;
  opacity:.92;
}
.style-preview__body{
  padding:13px;
  background:var(--preview-bg,#f6f7fb);
}
.style-preview__chips{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.style-preview__chip{
  min-height:31px;
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid #eadbcc;
  background:#fff;
  color:#6d5847;
  font-size:11px;
  line-height:1;
  font-weight:900;
}
.style-preview__chip--active{
  background:var(--preview-primary);
  border-color:var(--preview-primary);
  color:#fff;
}
.style-preview__product{
  display:grid;
  grid-template-columns:74px minmax(0,1fr);
  gap:11px;
  align-items:center;
  margin-top:12px;
  padding:12px;
  border-radius:22px;
  border:1px solid #efe0d0;
  background:#fff;
  box-shadow:0 12px 22px rgba(67,20,7,.05);
}
.style-preview__photo{
  width:74px;
  height:66px;
  border-radius:18px;
  background:linear-gradient(155deg,var(--preview-primary) 0%,#ffe0bd 100%);
}
.style-preview__lines span{
  display:block;
  height:10px;
  margin-bottom:9px;
  border-radius:999px;
  background:#eadbcf;
}
.style-preview__lines span:nth-child(1){width:82%}
.style-preview__lines span:nth-child(2){width:58%}
.style-preview__lines span:nth-child(3){width:68%;margin-bottom:0}
.style-preview__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:12px;
}
.style-preview__btn{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  color:#fff;
  font-size:12px;
  font-weight:1000;
  box-shadow:0 10px 20px rgba(67,20,7,.10);
}
.style-preview__btn--primary{background:var(--preview-primary)}
.style-preview__btn--secondary{background:var(--preview-secondary)}
.style-app .config-save-bar{
  position:sticky;
  bottom:12px;
  z-index:20;
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:10px;
  margin:0!important;
  padding:10px;
  border:1px solid rgba(234,223,206,.92);
  border-radius:24px;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 44px rgba(67,20,7,.14);
  backdrop-filter:blur(12px);
}
.style-app .config-save-bar .btn{
  width:100%;
  min-height:58px!important;
  border-radius:18px!important;
  font-size:16px!important;
  font-weight:1000!important;
}
.style-app .config-save-bar button.btn{
  background:linear-gradient(135deg,#ff7900 0%,#f56600 52%,#df5b00 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 30px rgba(245,102,0,.24)!important;
}
@media(max-width:760px){
  .style-app{margin-bottom:94px}
  .style-topbar{
    grid-template-columns:48px minmax(0,1fr) 48px;
    margin-bottom:16px;
  }
  .style-topbar h1{font-size:28px}
  .style-topbar__back,
  .style-topbar__spacer{width:48px;height:48px}
  .style-card{
    padding:22px!important;
    border-radius:28px!important;
  }
  .style-card__head h2{font-size:24px!important}
  .style-color-layout{
    grid-template-columns:1fr;
    gap:16px;
  }
  .style-preview{
    position:static;
  }
  .style-preview__phone{
    max-width:360px;
    margin:0 auto;
  }
  .style-app .config-save-bar{
    bottom:9px;
    border-radius:20px;
  }
}
@media(max-width:520px){
  .style-app{width:100%}
  .style-topbar{margin-top:-2px}
  .style-card{
    padding:18px!important;
    border-radius:26px!important;
  }
  .style-card__head{
    align-items:flex-start;
    margin-bottom:18px;
  }
  .style-card__head h2{font-size:22px!important}
  .style-kicker{
    font-size:9.5px;
    padding:5px 8px;
  }
  .style-pill{
    min-height:34px;
    padding:8px 11px;
    font-size:12px;
  }
  .style-view-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
  .style-view-option{
    min-height:88px;
    grid-template-columns:62px minmax(0,1fr);
    padding:13px!important;
    border-radius:20px;
  }
  .style-view-option__icon{
    width:62px;
    height:48px;
    border-radius:16px;
  }
  .style-view-option strong{font-size:15px}
  .style-color-card{
    padding:13px;
    border-radius:20px;
  }
  .style-color-card__swatch{
    width:48px;
    height:48px;
    border-radius:16px;
    flex-basis:48px;
  }
  .style-color-card__head strong{font-size:15px}
  .style-color-card__body{
    grid-template-columns:90px minmax(0,1fr);
  }
  .style-color-card__picker,
  .style-color-card__hex{
    min-height:54px!important;
    height:54px!important;
    border-radius:17px!important;
  }
  .style-preview__phone{
    max-width:320px;
    border-radius:28px;
  }
  .style-preview__cover{
    min-height:128px;
  }
  .style-preview__brand{font-size:19px}
  .style-app .config-save-bar{
    grid-template-columns:1fr;
    padding:9px;
  }
  .style-app .config-save-bar .btn{
    min-height:54px!important;
    font-size:15px!important;
  }
}
@media(max-width:370px){
  .style-color-card__body{
    grid-template-columns:1fr;
  }
  .style-preview__phone{
    max-width:100%;
  }
}

.razon-app{
  width:min(760px,100%);
  margin:0 auto 96px;
}
.razon-topbar{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  gap:10px;
  margin:0 0 18px;
  padding:3px 0 0;
}
.razon-topbar h1{
  margin:0;
  text-align:center;
  color:#111;
  font-size:31px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.razon-topbar__back,
.razon-topbar__spacer{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
}
.razon-topbar__back{
  color:#111;
  border-radius:18px;
  background:transparent;
  text-decoration:none;
}
.razon-topbar__back svg{
  width:34px;
  height:34px;
}
.razon-topbar__back:hover{
  transform:translateY(-1px);
}
.razon-app .negocio-tenant-selector{
  margin-bottom:14px!important;
  padding:18px!important;
  border-radius:24px!important;
}
.razon-form{
  display:grid;
  gap:16px;
  max-width:none!important;
  margin:0 0 96px!important;
}
.razon-card{
  padding:26px!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.97)!important;
  border:1px solid #efe6dc!important;
  box-shadow:0 24px 48px rgba(67,20,7,.07)!important;
  overflow:hidden;
}
.razon-card--main{
  display:grid;
  gap:16px;
}
.razon-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin:0 0 6px;
}
.razon-card__head h2{
  margin:6px 0 0!important;
  color:#101010!important;
  font-size:26px!important;
  line-height:1.05!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.razon-card__head h2::after{
  display:none!important;
}
.razon-kicker{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a5a0a;
  border:1px solid #f3dfc8;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.razon-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 14px;
  border-radius:999px;
  background:#fffaf5;
  border:1px solid #eadfce;
  color:#6f4322;
  font-size:13px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
}
.razon-field-stack{
  display:grid;
  gap:8px;
}
.razon-field-stack label{
  margin:0!important;
  color:#181818!important;
  font-size:14px!important;
  font-weight:1000!important;
  letter-spacing:-.02em;
}
.razon-field-stack input{
  width:100%;
  min-height:70px!important;
  padding:0 20px!important;
  border-radius:23px!important;
  border:1px solid #eadfce!important;
  background:#fff!important;
  color:#1f1f1f!important;
  font-size:18px!important;
  font-weight:850!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86),0 12px 24px rgba(67,20,7,.04)!important;
  outline:none!important;
}
.razon-field-stack input::placeholder{
  color:#a3a3a3!important;
  font-weight:800!important;
}
.razon-field-stack input:focus{
  border-color:#fb923c!important;
  box-shadow:0 0 0 4px rgba(251,146,60,.14),0 12px 24px rgba(67,20,7,.05)!important;
}
.razon-card--preview{
  padding:18px!important;
  background:linear-gradient(135deg,#fff7ed 0%,#ffffff 70%)!important;
}
.razon-preview{
  display:grid;
  grid-template-columns:74px minmax(0,1fr);
  align-items:center;
  gap:15px;
}
.razon-preview__badge{
  width:74px;
  height:74px;
  display:grid;
  place-items:center;
  border-radius:25px;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 58%,#e85d04 100%);
  color:#fff;
  font-size:30px;
  font-weight:1000;
  box-shadow:0 18px 30px rgba(249,115,22,.25);
}
.razon-preview__body{
  min-width:0;
  display:grid;
  gap:3px;
}
.razon-preview__body span{
  color:#9a5a0a;
  font-size:11px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.razon-preview__body strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#141414;
  font-size:24px;
  line-height:1.08;
  font-weight:1000;
  letter-spacing:-.055em;
}
.razon-preview__body small{
  color:#6f4322;
  font-size:13px;
  font-weight:850;
}
.razon-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.razon-save-btn{
  min-height:66px;
  width:100%;
  border:0;
  border-radius:23px;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 54%,#ea580c 100%);
  color:#fff;
  font-size:18px;
  font-weight:1000;
  letter-spacing:-.03em;
  cursor:pointer;
  box-shadow:0 18px 32px rgba(249,115,22,.25),inset 0 -2px 0 rgba(0,0,0,.08);
  transition:transform .18s ease, box-shadow .18s ease;
}
.razon-save-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 22px 38px rgba(249,115,22,.30),inset 0 -2px 0 rgba(0,0,0,.08);
}
.razon-save-btn:active{
  transform:translateY(0);
}
@media(max-width:760px){
  .razon-app{
    width:100%;
    margin-bottom:94px;
  }
  .razon-topbar{
    grid-template-columns:48px minmax(0,1fr) 48px;
    margin:0 0 14px;
  }
  .razon-topbar h1{
    font-size:28px;
  }
  .razon-topbar__back,
  .razon-topbar__spacer{
    width:48px;
    height:48px;
  }
  .razon-topbar__back svg{
    width:31px;
    height:31px;
  }
  .razon-card{
    padding:18px!important;
    border-radius:26px!important;
  }
  .razon-card__head{
    align-items:flex-start;
    margin-bottom:4px;
  }
  .razon-card__head h2{
    font-size:22px!important;
  }
  .razon-kicker{
    font-size:9.5px;
    padding:5px 8px;
  }
  .razon-pill{
    min-height:34px;
    padding:8px 11px;
    font-size:12px;
  }
  .razon-field-stack input{
    min-height:64px!important;
    border-radius:21px!important;
    font-size:16px!important;
  }
  .razon-preview{
    grid-template-columns:64px minmax(0,1fr);
    gap:12px;
  }
  .razon-preview__badge{
    width:64px;
    height:64px;
    border-radius:22px;
    font-size:26px;
  }
  .razon-preview__body strong{
    font-size:21px;
  }
  .razon-save-btn{
    min-height:60px;
    border-radius:21px;
    font-size:16px;
  }
}
@media(max-width:390px){
  .razon-card{
    padding:15px!important;
  }
  .razon-card__head{
    display:grid;
    gap:10px;
  }
  .razon-pill{
    justify-self:start;
  }
  .razon-preview__body strong{
    font-size:19px;
  }
}

/* =========================================================
   MI NEGOCIO · módulos con diseño tipo app
   ========================================================= */
.negocio-app .negocio-field-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.negocio-app .negocio-field-stack--wide{
  grid-column:1 / -1;
}
.negocio-app .razon-field-stack input[type="tel"],
.negocio-app .razon-field-stack input[type="text"],
.negocio-app .razon-field-stack input:not([type]){
  width:100%;
}
.negocio-app .razon-preview__badge{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:28px;
}
.tipos-app .categorias-topbar h1{
  font-size:30px;
}
.tipos-app .categorias-form-card{
  margin-bottom:28px!important;
}
@media(max-width:760px){
  .negocio-app .negocio-field-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .negocio-app .negocio-field-stack--wide{
    grid-column:auto;
  }
  .tipos-app .categorias-topbar h1{
    font-size:27px;
  }
}
@media(max-width:390px){
  .negocio-app .razon-card__head{
    display:grid;
    gap:10px;
  }
  .negocio-app .razon-pill{
    justify-self:start;
  }
  .tipos-app .categorias-topbar h1{
    font-size:24px;
  }
}

/* =========================================================
   PRODUCTOS · alta rápida tipo app compacta
   ========================================================= */
.productos-add-card{
  padding:18px!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,#fffaf5 100%)!important;
  border:1px solid #efe6dc!important;
  box-shadow:0 20px 42px rgba(67,20,7,.075)!important;
  overflow:hidden;
}
.productos-add-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px;
}
.productos-add-card__head h2{
  margin:5px 0 0!important;
  color:#101010!important;
  font-size:25px!important;
  line-height:1.02!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.productos-add-card__head h2::after{display:none!important}
.productos-add-kicker{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a5a0a;
  border:1px solid #f3dfc8;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.productos-add-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 13px;
  border-radius:999px;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 60%,#ea580c 100%);
  color:#fff;
  box-shadow:0 14px 24px rgba(249,115,22,.24);
  font-size:12px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
}
.productos-add-form{
  display:grid;
  gap:12px;
}
.productos-add-fields{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(160px,.85fr) minmax(120px,.55fr);
  gap:10px;
  align-items:end;
}
.productos-field{
  display:grid;
  gap:7px;
  min-width:0;
}
.productos-add-card .productos-field label{
  margin:0!important;
  color:#181818!important;
  font-size:13px!important;
  font-weight:1000!important;
  letter-spacing:-.02em;
}
.productos-add-card .productos-field input,
.productos-add-card .productos-field select,
.productos-add-card .productos-field textarea{
  width:100%;
  min-height:54px!important;
  border-radius:17px!important;
  padding:0 14px!important;
  border:1px solid #eadfce!important;
  background:#fff!important;
  color:#17120e!important;
  font-size:15.5px!important;
  font-weight:850!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 18px rgba(67,20,7,.035)!important;
  outline:0!important;
}
.productos-add-card .productos-field textarea{
  min-height:76px!important;
  padding:13px 14px!important;
  resize:vertical;
  line-height:1.28!important;
  margin:0!important;
}
.productos-add-card .productos-field input:focus,
.productos-add-card .productos-field select:focus,
.productos-add-card .productos-field textarea:focus{
  border-color:#fb923c!important;
  box-shadow:0 0 0 4px rgba(251,146,60,.14),0 10px 20px rgba(67,20,7,.05)!important;
}
.productos-photo-picker{
  display:flex!important;
  align-items:center;
  gap:12px;
  margin:0!important;
  padding:12px 14px!important;
  min-height:68px;
  border-radius:21px;
  background:#fff!important;
  border:1px dashed #f1cfa8;
  box-shadow:0 10px 22px rgba(67,20,7,.035);
  cursor:pointer;
}
.productos-photo-picker__icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  flex:0 0 44px;
  border-radius:16px;
  background:#fff7ed;
  border:1px solid #f3dfc8;
  font-size:22px;
}
.productos-photo-picker span:not(.productos-photo-picker__icon){
  display:grid;
  gap:3px;
  min-width:0;
}
.productos-photo-picker strong{
  color:#17120e;
  font-size:14px;
  line-height:1.1;
  font-weight:1000;
}
.productos-photo-picker small{
  color:#8a6a4c;
  font-size:11px;
  line-height:1;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.productos-photo-picker input[type="file"]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.productos-status-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.productos-status-switch{
  min-height:56px!important;
  padding:8px 10px!important;
  border-radius:19px;
  background:#fff;
  border:1px solid #eadfce;
  box-shadow:0 8px 18px rgba(67,20,7,.035);
}
.productos-status-switch .categoria-switch__track{
  width:58px;
  height:34px;
  flex-basis:58px;
  padding:3px;
}
.productos-status-switch .categoria-switch__thumb{
  width:26px;
  height:26px;
}
.productos-status-switch input:checked + .categoria-switch__track .categoria-switch__thumb{
  transform:translateX(24px);
}
.productos-status-switch strong{
  font-size:14px;
}
.productos-add-card .productos-responsibility{
  margin:0;
  padding:12px;
  border-radius:18px;
  background:#fff;
}
.productos-form-actions{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  margin-top:2px;
}
.productos-primary-btn{
  min-height:58px!important;
  border:0!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 54%,#ea580c 100%)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:1000!important;
  letter-spacing:-.02em;
  box-shadow:0 17px 28px rgba(249,115,22,.25),inset 0 -2px 0 rgba(0,0,0,.08)!important;
}
.productos-ghost-btn{
  min-height:58px!important;
  min-width:112px;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid #eadfce!important;
  color:#6f4322!important;
  font-size:14px!important;
  font-weight:1000!important;
  box-shadow:0 8px 18px rgba(67,20,7,.035)!important;
}
.productos-limit-card .productos-primary-btn{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  text-decoration:none!important;
}
@media(max-width:760px){
  .productos-add-card{padding:16px!important;border-radius:26px!important}
  .productos-add-card__head h2{font-size:23px!important}
  .productos-add-fields{grid-template-columns:1fr 1fr;gap:10px}
  .productos-field--wide{grid-column:1/-1}
}
@media(max-width:520px){
  .productos-add-card{padding:14px!important;border-radius:24px!important}
  .productos-add-card__head{margin-bottom:12px}
  .productos-add-card__head h2{font-size:22px!important}
  .productos-add-pill{min-height:32px;padding:7px 11px;font-size:11px}
  .productos-add-fields{grid-template-columns:1fr;gap:10px}
  .productos-add-card .productos-field input,
  .productos-add-card .productos-field select,
  .productos-add-card .productos-field textarea{min-height:52px!important;font-size:15px!important;border-radius:16px!important}
  .productos-add-card .productos-field textarea{min-height:72px!important}
  .productos-status-row{gap:8px}
  .productos-status-switch{gap:8px!important;padding:7px 8px!important}
  .productos-status-switch .categoria-switch__track{width:52px;height:32px;flex-basis:52px}
  .productos-status-switch .categoria-switch__thumb{width:24px;height:24px}
  .productos-status-switch input:checked + .categoria-switch__track .categoria-switch__thumb{transform:translateX(20px)}
  .productos-status-switch strong{font-size:13px}
  .productos-form-actions{grid-template-columns:1fr;gap:8px}
  .productos-primary-btn,.productos-ghost-btn{width:100%;min-height:54px!important}
}

/* =========================================================
   PEDIDOS · diseño tipo app compacto
   ========================================================= */
.pedidos-app,
.pedido-view-app{
  width:min(760px,100%);
  margin:0 auto 96px;
}
.pedidos-topbar,
.pedido-view-topbar{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  gap:10px;
  margin:0 0 18px;
  padding:3px 0 0;
}
.pedidos-topbar h1,
.pedido-view-topbar h1{
  margin:0;
  text-align:center;
  color:#111;
  font-size:31px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.pedidos-topbar__back,
.pedidos-topbar__spacer,
.pedido-view-topbar__back,
.pedido-view-topbar__spacer{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
}
.pedidos-topbar__back,
.pedido-view-topbar__back{
  color:#111;
  border-radius:18px;
  background:transparent;
  text-decoration:none;
}
.pedidos-topbar__back svg,
.pedido-view-topbar__back svg{
  width:34px;
  height:34px;
}
.pedidos-topbar__back:hover,
.pedido-view-topbar__back:hover{
  transform:translateY(-1px);
}
.pedidos-tenant-card{
  margin-bottom:14px!important;
  padding:18px!important;
  border-radius:24px!important;
}
.pedidos-summary{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:12px;
  margin:0 0 20px;
}
.pedidos-stat-card{
  min-height:118px;
  display:grid;
  align-content:center;
  gap:6px;
  padding:18px;
  border-radius:28px;
  background:#fff;
  border:1px solid #efe6dc;
  box-shadow:0 18px 38px rgba(67,20,7,.055);
  overflow:hidden;
}
.pedidos-stat-card--orange{
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 58%,#ea580c 100%);
  color:#fff;
  border-color:rgba(255,255,255,.28);
  box-shadow:0 20px 40px rgba(249,115,22,.24);
}
.pedidos-stat-card span{
  color:#9a5a0a;
  font-size:11px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pedidos-stat-card--orange span{
  color:rgba(255,255,255,.82);
}
.pedidos-stat-card strong{
  color:#121212;
  font-size:29px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.pedidos-stat-card--orange strong{
  color:#fff;
}
.pedidos-stat-card small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#6f4322;
  font-size:13px;
  line-height:1;
  font-weight:900;
}
.pedidos-stat-card--orange small{
  color:rgba(255,255,255,.92);
}
.pedidos-list-section{
  margin-top:0;
}
.pedidos-list-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 5px 15px;
}
.pedidos-list-head h2{
  margin:0;
  color:#111;
  font-size:26px;
  line-height:1.1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.pedidos-list-head span{
  color:#6f4322;
  font-size:13px;
  font-weight:1000;
  background:#fff7ed;
  border:1px solid #f3dfc8;
  border-radius:999px;
  padding:8px 11px;
  white-space:nowrap;
}
.pedidos-list{
  display:grid;
  gap:13px;
}
.pedido-card{
  border-radius:30px;
  background:rgba(255,255,255,.98);
  border:1px solid #efe6dc;
  box-shadow:0 20px 42px rgba(67,20,7,.065);
  overflow:hidden;
}
.pedido-card__main{
  padding:20px;
}
.pedido-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.pedido-card__head h3{
  margin:5px 0 0;
  color:#111;
  font-size:23px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.05em;
}
.pedido-card__folio,
.pedido-view-kicker{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a5a0a;
  border:1px solid #f3dfc8;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pedido-status{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:999px;
  font-size:12px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
}
.pedido-status.is-new{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}
.pedido-status.is-confirmed{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}
.pedido-status.is-progress{background:#fef3c7;color:#92400e;border:1px solid #fde68a}
.pedido-status.is-ready{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}
.pedido-status.is-done{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}
.pedido-status.is-cancelled{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}
.pedido-status.is-muted{background:#f3f4f6;color:#64748b;border:1px solid #e5e7eb}
.pedido-card__meta{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin:0 0 16px;
}
.pedido-card__meta span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  min-height:38px;
  display:flex;
  align-items:center;
  padding:8px 10px;
  border-radius:14px;
  background:#fffaf5;
  color:#5c4032;
  border:1px solid #f0e1d0;
  font-size:12.5px;
  font-weight:850;
}
.pedido-card__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.pedido-card__bottom strong{
  color:#111;
  font-size:29px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.pedido-view-btn{
  min-height:44px!important;
  border-radius:16px!important;
  padding:10px 16px!important;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 54%,#ea580c 100%)!important;
  color:#fff!important;
  box-shadow:0 14px 26px rgba(249,115,22,.20)!important;
}
.pedido-card__controls{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:10px;
  padding:14px;
  background:#fffaf5;
  border-top:1px solid #efe6dc;
}
.pedido-control-form{
  min-width:0;
}
.pedido-control-form label{
  margin:0 0 7px!important;
  color:#7a4a1b!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:1000!important;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pedido-control-form select{
  min-height:46px!important;
  border-radius:16px!important;
  padding:9px 11px!important;
  background:#fff!important;
  border:1px solid #eadfce!important;
  color:#1f1f1f!important;
  font-size:13px!important;
  font-weight:900!important;
}
.pedidos-empty{
  border-radius:28px!important;
  padding:30px!important;
}

.pedido-view-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:15px;
  padding:24px!important;
  border-radius:30px;
  background:linear-gradient(135deg,#fff7ed 0%,#ffffff 76%);
  border:1px solid #efe6dc;
  box-shadow:0 20px 42px rgba(67,20,7,.065);
  margin-bottom:12px;
}
.pedido-view-hero div{
  min-width:0;
  display:grid;
  gap:6px;
}
.pedido-view-hero strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111;
  font-size:34px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.06em;
}
.pedido-view-hero small{
  color:#6f4322;
  font-size:13px;
  font-weight:850;
}
.pedido-total-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:92px;
  margin-bottom:13px;
  padding:20px 22px;
  border-radius:28px;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 58%,#ea580c 100%);
  color:#fff;
  box-shadow:0 20px 40px rgba(249,115,22,.24);
}
.pedido-total-card span{
  color:rgba(255,255,255,.82);
  font-size:12px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pedido-total-card strong{
  color:#fff;
  font-size:37px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.06em;
}
.pedido-view-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:13px;
}
.pedido-info-card{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:13px;
  min-height:112px;
  padding:17px;
  border-radius:28px;
  background:#fff;
  border:1px solid #efe6dc;
  box-shadow:0 18px 38px rgba(67,20,7,.055);
}
.pedido-info-card--wide{
  grid-column:1/-1;
  align-items:flex-start;
}
.pedido-info-card__icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:19px;
  background:#fff7ed;
  border:1px solid #f3dfc8;
  font-size:23px;
}
.pedido-info-card div:last-child{
  min-width:0;
  display:grid;
  gap:4px;
}
.pedido-info-card span{
  color:#9a5a0a;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pedido-info-card strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111;
  font-size:19px;
  line-height:1.1;
  font-weight:1000;
  letter-spacing:-.04em;
}
.pedido-info-card--wide strong{
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  font-size:17px;
  line-height:1.25;
}
.pedido-info-card small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#6f4322;
  font-size:12px;
  font-weight:850;
}
.pedido-detail-card,
.pedido-copy-card{
  margin-bottom:13px;
  padding:20px;
  border-radius:30px;
  background:#fff;
  border:1px solid #efe6dc;
  box-shadow:0 20px 42px rgba(67,20,7,.065);
}
.pedido-detail-card__head,
.pedido-copy-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin:0 0 16px;
}
.pedido-detail-card__head h2,
.pedido-copy-card__head h2{
  margin:0!important;
  color:#111!important;
  font-size:25px!important;
  line-height:1.05!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.pedido-detail-card__head h2::after,
.pedido-copy-card__head h2::after{
  display:none!important;
}
.pedido-detail-card__head span{
  color:#6f4322;
  font-size:13px;
  font-weight:1000;
  background:#fff7ed;
  border:1px solid #f3dfc8;
  border-radius:999px;
  padding:8px 11px;
  white-space:nowrap;
}
.pedido-items-list{
  display:grid;
  gap:10px;
}
.pedido-item-card{
  padding:15px;
  border-radius:22px;
  background:#fffaf5;
  border:1px solid #f0e1d0;
}
.pedido-item-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.pedido-item-card__top div{
  min-width:0;
  display:grid;
  gap:6px;
}
.pedido-item-card__top strong{
  color:#111;
  font-size:17px;
  line-height:1.15;
  font-weight:1000;
  letter-spacing:-.035em;
}
.pedido-item-card__top small{
  color:#6f4322;
  font-size:12px;
  font-weight:850;
  line-height:1.25;
}
.pedido-item-card__top span{
  color:#111;
  font-size:16px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
}
.pedido-copy-btn{
  min-height:42px;
  padding:10px 14px;
  border:0;
  border-radius:16px;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 54%,#ea580c 100%);
  color:#fff;
  font-size:13px;
  font-weight:1000;
  cursor:pointer;
  box-shadow:0 14px 26px rgba(249,115,22,.20);
}
.pedido-copy-card textarea{
  min-height:220px!important;
  border-radius:22px!important;
  padding:15px!important;
  border:1px solid #eadfce!important;
  background:#fffaf5!important;
  color:#1f1f1f!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1.45!important;
}
@media(max-width:760px){
  .pedidos-app,
  .pedido-view-app{
    width:100%;
    margin-bottom:94px;
  }
  .pedidos-topbar,
  .pedido-view-topbar{
    grid-template-columns:48px minmax(0,1fr) 48px;
    margin:0 0 14px;
  }
  .pedidos-topbar h1,
  .pedido-view-topbar h1{
    font-size:28px;
  }
  .pedidos-topbar__back,
  .pedidos-topbar__spacer,
  .pedido-view-topbar__back,
  .pedido-view-topbar__spacer{
    width:48px;
    height:48px;
  }
  .pedidos-topbar__back svg,
  .pedido-view-topbar__back svg{
    width:31px;
    height:31px;
  }
  .pedidos-summary{
    grid-template-columns:1fr 1fr 1fr;
    gap:9px;
    margin-bottom:17px;
  }
  .pedidos-stat-card{
    min-height:100px;
    padding:14px 12px;
    border-radius:24px;
  }
  .pedidos-stat-card strong{
    font-size:25px;
  }
  .pedidos-stat-card small{
    font-size:11px;
  }
  .pedidos-list-head h2{
    font-size:24px;
  }
  .pedido-card{
    border-radius:27px;
  }
  .pedido-card__main{
    padding:17px;
  }
  .pedido-card__head h3{
    font-size:21px;
  }
  .pedido-card__meta{
    grid-template-columns:1fr;
    gap:8px;
  }
  .pedido-card__bottom strong{
    font-size:26px;
  }
  .pedido-card__controls{
    grid-template-columns:1fr;
    padding:12px;
  }
  .pedido-view-hero,
  .pedido-detail-card,
  .pedido-copy-card{
    border-radius:27px;
    padding:17px;
  }
  .pedido-view-hero strong{
    font-size:30px;
  }
  .pedido-total-card{
    min-height:84px;
    border-radius:24px;
    padding:18px;
  }
  .pedido-total-card strong{
    font-size:33px;
  }
  .pedido-view-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
  .pedido-info-card{
    min-height:98px;
    border-radius:24px;
    padding:15px;
  }
}
@media(max-width:430px){
  .pedidos-summary{
    grid-template-columns:1fr;
  }
  .pedidos-stat-card{
    min-height:84px;
  }
  .pedido-card__head{
    display:grid;
    gap:10px;
  }
  .pedido-status{
    justify-self:start;
  }
  .pedido-card__bottom{
    align-items:stretch;
    display:grid;
    grid-template-columns:1fr;
  }
  .pedido-view-btn{
    width:100%;
  }
  .pedido-view-hero{
    display:grid;
  }
  .pedido-total-card strong{
    font-size:30px;
  }
  .pedido-info-card{
    grid-template-columns:48px minmax(0,1fr);
  }
  .pedido-info-card__icon{
    width:48px;
    height:48px;
    border-radius:17px;
  }
}

/* Pedidos · rediseño solicitado: resumen compacto en paper naranja + cards delgadas */
.pedidos-summary-paper.panel-summary--hero{
  margin:0 0 14px!important;
  padding:14px!important;
  border-radius:22px!important;
}
.pedidos-summary-paper::before{
  width:210px!important;
  height:210px!important;
  right:-88px!important;
  bottom:-118px!important;
}
.pedidos-summary-paper__head{
  margin-bottom:8px!important;
}
.pedidos-summary-paper__head h2{
  font-size:16px!important;
  line-height:1!important;
}
.pedidos-summary-paper .panel-summary__filter{
  min-height:30px!important;
  padding:7px 10px!important;
  font-size:11px!important;
}
.pedidos-summary-paper__grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
.pedidos-summary-card.summary-card{
  min-height:66px!important;
  align-items:center!important;
  gap:8px!important;
  padding:9px 10px!important;
  border-radius:17px!important;
}
.pedidos-summary-card .summary-card__icon{
  width:36px!important;
  height:36px!important;
  flex-basis:36px!important;
  border-radius:13px!important;
  font-size:17px!important;
}
.pedidos-summary-card .summary-card__body{
  gap:3px!important;
  min-width:0!important;
}
.pedidos-summary-card .summary-card__label{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:10.5px!important;
  line-height:1.05!important;
}
.pedidos-summary-card .summary-card__value{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:22px!important;
  line-height:1!important;
  word-break:normal!important;
}
.pedidos-summary-card:nth-child(2) .summary-card__value{
  font-size:18px!important;
}
.pedido-card--thin{
  min-height:68px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 10px 10px 12px!important;
  border-radius:20px!important;
  box-shadow:0 12px 26px rgba(67,20,7,.05)!important;
}
.pedido-card__thin-info{
  min-width:0;
  display:grid;
  gap:5px;
}
.pedido-card__thin-info strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111;
  font-size:17px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.04em;
}
.pedido-card__thin-total{
  color:#111;
  font-size:19px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.045em;
  white-space:nowrap;
}
.pedido-view-btn--thin{
  min-height:38px!important;
  padding:9px 12px!important;
  border-radius:14px!important;
  font-size:12px!important;
  white-space:nowrap!important;
}
@media(max-width:760px){
  .pedidos-summary-paper.panel-summary--hero{
    padding:12px!important;
    border-radius:20px!important;
  }
  .pedidos-summary-paper__grid{
    gap:7px!important;
  }
  .pedidos-summary-card.summary-card{
    min-height:60px!important;
    padding:8px!important;
    border-radius:15px!important;
  }
  .pedidos-summary-card .summary-card__icon{
    width:31px!important;
    height:31px!important;
    flex-basis:31px!important;
    border-radius:11px!important;
    font-size:15px!important;
  }
  .pedidos-summary-card .summary-card__value{
    font-size:19px!important;
  }
  .pedidos-summary-card:nth-child(2) .summary-card__value{
    font-size:16px!important;
  }
  .pedido-card--thin{
    min-height:64px!important;
    gap:8px!important;
    padding:9px 9px 9px 11px!important;
    border-radius:18px!important;
  }
  .pedido-card__thin-info strong{
    font-size:16px;
  }
  .pedido-card__thin-total{
    font-size:18px;
  }
  .pedido-view-btn--thin{
    min-height:36px!important;
    padding:8px 10px!important;
  }
}
@media(max-width:430px){
  .pedidos-summary-paper__grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .pedidos-summary-card.summary-card{
    display:grid!important;
    justify-items:start!important;
    gap:5px!important;
  }
  .pedidos-summary-card .summary-card__icon{
    display:none!important;
  }
  .pedidos-summary-card .summary-card__label{
    font-size:9.5px!important;
  }
  .pedidos-summary-card .summary-card__value{
    font-size:18px!important;
  }
  .pedidos-summary-card:nth-child(2) .summary-card__value{
    font-size:14px!important;
  }
  .pedido-card--thin{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  .pedido-view-btn--thin{
    grid-column:1/-1;
    width:100%;
  }
}

/* =========================================================
   BANNER COMERCIAL · diseño tipo app alineado a módulos
   ========================================================= */
.banner-app{
  width:min(760px,100%);
  margin:0 auto 96px;
}
.banner-topbar{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  gap:10px;
  margin:0 0 18px;
  padding:3px 0 0;
}
.banner-topbar h1{
  margin:0;
  text-align:center;
  color:#111;
  font-size:31px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.banner-topbar__back,
.banner-topbar__spacer{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
}
.banner-topbar__back{
  color:#111;
  border-radius:18px;
  background:transparent;
  text-decoration:none;
}
.banner-topbar__back svg{
  width:34px;
  height:34px;
}
.banner-topbar__back:hover{
  transform:translateY(-1px);
}
.banner-app .filter-card{
  margin-bottom:14px!important;
  padding:18px!important;
  border-radius:24px!important;
}
.banner-form{
  display:grid;
  gap:16px;
  max-width:none!important;
  margin:0 0 96px!important;
}
.banner-card{
  padding:24px!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.97)!important;
  border:1px solid #efe6dc!important;
  box-shadow:0 24px 48px rgba(67,20,7,.07)!important;
  overflow:hidden;
}
.banner-card--status{
  position:relative;
  padding:22px!important;
  background:linear-gradient(135deg,#ff922f 0%,#f97316 56%,#e45b00 100%)!important;
  border:0!important;
  box-shadow:0 24px 44px rgba(222,101,14,.24)!important;
}
.banner-card--status::before{
  content:"";
  position:absolute;
  right:-74px;
  bottom:-100px;
  width:245px;
  height:245px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 68%);
  pointer-events:none;
}
.banner-card--media{
  padding:20px!important;
}
.banner-card__head{
  position:relative;
  z-index:1;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin:0 0 20px;
}
.banner-card__head--compact{
  margin-bottom:16px;
}
.banner-card__head h2{
  margin:6px 0 0!important;
  color:#101010!important;
  font-size:26px!important;
  line-height:1.05!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.banner-card__head h2::after{
  display:none!important;
}
.banner-card--status .banner-card__head h2{
  color:#fff!important;
  font-size:30px!important;
}
.banner-kicker{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a5a0a;
  border:1px solid #f3dfc8;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.banner-card--status .banner-kicker{
  background:rgba(255,255,255,.18);
  border-color:rgba(255,255,255,.22);
  color:#fff;
}
.banner-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 14px;
  border-radius:999px;
  background:#fffaf5;
  border:1px solid #eadfce;
  color:#6f4322;
  font-size:13px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
}
.banner-pill.is-on,
.banner-pill.is-premium{
  background:#dcfce7;
  border-color:#bbf7d0;
  color:#166534;
}
.banner-pill.is-off{
  background:#f3f4f6;
  border-color:#e5e7eb;
  color:#64748b;
}
.banner-pill.is-pending{
  background:#fff7ed;
  border-color:#fed7aa;
  color:#c2410c;
}
.banner-switch-panel{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  border-radius:22px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.18);
}
.banner-switch-panel strong{
  display:block;
  color:#fff;
  font-size:20px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.035em;
}
.banner-switch-panel small{
  display:block;
  margin-top:6px;
  color:rgba(255,255,255,.88);
  font-size:13px;
  line-height:1.25;
  font-weight:800;
}
.banner-switch-panel.is-demo{
  background:rgba(255,255,255,.13);
}
.banner-app .switch-toggle__track{
  width:72px;
  height:40px;
  flex-basis:72px;
  background:rgba(255,255,255,.28);
  border:1px solid rgba(255,255,255,.28);
}
.banner-app .switch-toggle__thumb{
  width:30px;
  height:30px;
}
.banner-app .switch-toggle input:checked + .switch-toggle__track{
  background:#dcfce7;
  border-color:#bbf7d0;
}
.banner-app .switch-toggle input:checked + .switch-toggle__track .switch-toggle__thumb{
  transform:translateX(30px);
}
.banner-media-layout{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:18px;
  align-items:stretch;
}
.banner-preview-box{
  position:relative;
  overflow:hidden;
  display:grid;
  place-items:center;
  min-height:170px;
  border-radius:24px;
  background:linear-gradient(135deg,#17120e 0%,#2b211a 100%);
  border:1px solid #eadfce;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 14px 26px rgba(67,20,7,.06);
}
.banner-preview-box img,
.banner-preview-box video{
  width:100%;
  height:100%;
  min-height:170px;
  object-fit:cover;
  display:block;
}
.banner-preview-box--demo{
  min-height:185px;
}
.banner-preview-placeholder{
  display:grid;
  place-items:center;
  width:130px;
  height:86px;
  border-radius:26px;
  background:linear-gradient(135deg,#ff8a1a 0%,#f56600 100%);
  color:#fff;
  font-size:18px;
  font-weight:1000;
  letter-spacing:-.035em;
  box-shadow:0 18px 30px rgba(245,102,0,.24);
}
.banner-field-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.banner-field-grid--dates{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.banner-field-stack{
  min-width:0;
  display:grid;
  gap:10px;
  align-content:start;
  margin:0 0 14px;
}
.banner-field-stack:last-child{
  margin-bottom:0;
}
.banner-field-stack label{
  margin:0!important;
  color:#181818!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:-.02em;
}
.banner-field-stack input:not([type="checkbox"]),
.banner-field-stack textarea,
.banner-field-stack select{
  width:100%;
  min-height:62px!important;
  border-radius:20px!important;
  padding:15px 18px!important;
  border:1px solid #e8e2dc!important;
  background:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 16px rgba(67,20,7,.035)!important;
  color:#17120e!important;
  font-size:16px!important;
  font-weight:750!important;
  outline:none!important;
}
.banner-field-stack textarea{
  min-height:116px!important;
  resize:vertical;
  line-height:1.35!important;
}
.banner-field-stack input[type="file"]{
  min-height:auto!important;
  padding:14px!important;
  background:#fffaf5!important;
  border-style:dashed!important;
  font-size:14px!important;
  cursor:pointer;
}
.banner-field-stack input[type="date"]{
  min-height:60px!important;
}
.banner-field-stack input:focus,
.banner-field-stack textarea:focus,
.banner-field-stack select:focus{
  border-color:#fb923c!important;
  box-shadow:0 0 0 4px rgba(251,146,60,.14),0 12px 24px rgba(67,20,7,.05)!important;
}
.banner-check{
  display:inline-flex!important;
  align-items:center;
  gap:9px;
  width:max-content;
  max-width:100%;
  min-height:40px;
  margin:0!important;
  padding:9px 12px;
  border-radius:999px;
  background:#fff7ed;
  border:1px solid #f0dfcd;
  color:#7c2d12!important;
  font-size:13px!important;
  font-weight:1000!important;
  cursor:pointer;
}
.banner-check input{
  width:auto!important;
  margin:0!important;
}
.banner-locked-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 260px;
  gap:18px;
  align-items:stretch;
}
.banner-locked-copy{
  display:grid;
  gap:14px;
  align-content:center;
}
.banner-locked-copy p{
  margin:0;
  color:#5f5146;
  font-size:15px;
  line-height:1.45;
  font-weight:850;
}
.banner-locked-copy .btn{
  width:100%;
  min-height:56px!important;
  border-radius:19px!important;
  font-weight:1000!important;
}
.banner-responsibility-grid{
  margin:14px 0 0!important;
}
.banner-app .option-grid.banner-responsibility-grid .option-tile{
  border-radius:22px!important;
  background:#fffaf5!important;
}
.banner-app .config-save-bar{
  position:sticky;
  bottom:12px;
  z-index:20;
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:10px;
  margin:0!important;
  padding:10px;
  border:1px solid rgba(234,223,206,.92);
  border-radius:24px;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 44px rgba(67,20,7,.14);
  backdrop-filter:blur(12px);
}
.banner-app .config-save-bar .btn{
  width:100%;
  min-height:58px!important;
  border-radius:18px!important;
  font-size:16px!important;
  font-weight:1000!important;
}
.banner-app .config-save-bar button.btn{
  background:linear-gradient(135deg,#ff7900 0%,#f56600 52%,#df5b00 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 30px rgba(245,102,0,.24)!important;
}
@media(max-width:760px){
  .banner-app{
    width:100%;
    margin-bottom:94px;
  }
  .banner-topbar{
    grid-template-columns:48px minmax(0,1fr) 48px;
    margin-bottom:16px;
  }
  .banner-topbar h1{
    font-size:28px;
  }
  .banner-topbar__back,
  .banner-topbar__spacer{
    width:48px;
    height:48px;
  }
  .banner-topbar__back svg{
    width:31px;
    height:31px;
  }
  .banner-card,
  .banner-card--status,
  .banner-card--media{
    padding:18px!important;
    border-radius:26px!important;
  }
  .banner-card__head{
    margin-bottom:16px;
  }
  .banner-card__head h2{
    font-size:22px!important;
  }
  .banner-card--status .banner-card__head h2{
    font-size:24px!important;
  }
  .banner-switch-panel{
    padding:14px;
    border-radius:20px;
  }
  .banner-switch-panel strong{
    font-size:17px;
  }
  .banner-switch-panel small{
    font-size:12px;
  }
  .banner-media-layout,
  .banner-locked-grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  .banner-preview-box,
  .banner-preview-box img,
  .banner-preview-box video{
    min-height:185px;
  }
  .banner-field-grid,
  .banner-field-grid--dates{
    grid-template-columns:1fr;
    gap:12px;
  }
  .banner-field-stack input:not([type="checkbox"]),
  .banner-field-stack textarea,
  .banner-field-stack select{
    min-height:60px!important;
    font-size:15px!important;
    border-radius:19px!important;
  }
  .banner-app .config-save-bar{
    bottom:9px;
    border-radius:20px;
  }
}
@media(max-width:520px){
  .banner-topbar{
    margin-top:-2px;
  }
  .banner-card,
  .banner-card--status,
  .banner-card--media{
    padding:16px!important;
    border-radius:25px!important;
  }
  .banner-card__head{
    align-items:flex-start;
    margin-bottom:14px;
  }
  .banner-pill{
    min-height:34px;
    padding:8px 11px;
    font-size:12px;
  }
  .banner-switch-panel{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
  }
  .banner-switch-panel small{
    display:none;
  }
  .banner-app .switch-toggle__track{
    width:64px;
    height:38px;
    flex-basis:64px;
  }
  .banner-app .switch-toggle__thumb{
    width:28px;
    height:28px;
  }
  .banner-app .switch-toggle input:checked + .switch-toggle__track .switch-toggle__thumb{
    transform:translateX(26px);
  }
  .banner-preview-box,
  .banner-preview-box img,
  .banner-preview-box video{
    min-height:158px;
  }
  .banner-app .config-save-bar{
    grid-template-columns:1fr;
    padding:9px;
  }
  .banner-app .config-save-bar .btn{
    min-height:54px!important;
    font-size:15px!important;
  }
}
@media(max-width:390px){
  .banner-card__head{
    display:grid;
    gap:10px;
  }
  .banner-pill{
    justify-self:start;
  }
  .banner-preview-box,
  .banner-preview-box img,
  .banner-preview-box video{
    min-height:145px;
  }
}

/* Login / registro estilo app, acceso solo con WhatsApp */
.auth-app-page{min-height:100dvh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:16px!important;background:radial-gradient(circle at 14% 0%,#fff0d7 0,#fff7ed 32%,#ffffff 74%)!important;color:#23170f}
.auth-app-shell{width:min(960px,100%);display:grid;grid-template-columns:minmax(0,.95fr) minmax(360px,430px);align-items:center;gap:18px}
.auth-app-shell--signup{grid-template-columns:minmax(0,.88fr) minmax(360px,480px)}
.auth-app-hero{position:relative;overflow:hidden;min-height:520px;padding:34px;border-radius:36px;background:linear-gradient(145deg,#ff8a1a 0%,#f97316 48%,#15803d 100%);box-shadow:0 28px 70px rgba(217,119,6,.22);color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:22px}
.auth-app-hero:before{content:"";position:absolute;right:-96px;top:-92px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.17)}
.auth-app-hero:after{content:"";position:absolute;left:-75px;bottom:-85px;width:230px;height:230px;border-radius:50%;background:rgba(255,255,255,.12)}
.auth-app-logo{position:relative;z-index:1;width:70px;height:70px;display:grid;place-items:center;border-radius:24px;background:rgba(255,255,255,.18);font-size:34px;box-shadow:inset 0 1px 0 rgba(255,255,255,.25);backdrop-filter:blur(10px)}
.auth-app-kicker{margin:0 0 7px!important;font-size:12px!important;line-height:1.1;text-transform:uppercase;letter-spacing:.12em;font-weight:1000;color:inherit;opacity:.78}
.auth-app-hero h1{position:relative;z-index:1;margin:0;font-size:46px;line-height:.94;letter-spacing:-.06em;color:#fff;max-width:460px}
.auth-app-hero p:not(.auth-app-kicker){position:relative;z-index:1;margin:14px 0 0;font-size:17px;line-height:1.45;font-weight:750;color:rgba(255,255,255,.88);max-width:420px}
.auth-app-preview{position:relative;z-index:1;display:grid;gap:11px;width:min(330px,100%);padding:18px;border-radius:30px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px)}
.auth-app-preview span{display:block;height:56px;border-radius:20px;background:rgba(255,255,255,.22)}
.auth-app-preview span:nth-child(2){width:78%}.auth-app-preview span:nth-child(3){width:60%}
.auth-app-page .login-card.auth-app-card{width:100%!important;margin:0!important;padding:24px!important;border:1px solid #f0e1cf!important;border-radius:34px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 28px 70px rgba(67,20,7,.13)!important;backdrop-filter:blur(14px)}
.auth-card-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.auth-card-icon{width:58px;height:58px;flex:0 0 auto;display:grid;place-items:center;border-radius:22px;background:#fff7ed;font-size:28px;box-shadow:inset 0 0 0 1px #f2ddc5}
.auth-card-head h2{margin:0;font-size:28px;line-height:1;letter-spacing:-.045em;color:#21160e}
.auth-card-sub{margin:-6px 0 18px;color:#6f6257;font-weight:750;line-height:1.38}
.auth-app-page .flash{margin:0 0 14px!important;border-radius:20px!important;padding:12px 14px!important;font-size:13px!important}
.auth-app-page label{font-size:12px!important;margin:13px 0 7px!important;color:#483526!important;letter-spacing:.01em}
.auth-app-page input{height:50px!important;border-radius:18px!important;border-color:#eedfce!important;background:#fff!important;font-size:16px!important;font-weight:750!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important}
.auth-input-wrap{display:flex;align-items:center;gap:8px;width:100%;height:50px;border:1px solid #eedfce;background:#fff;border-radius:18px;padding:0 12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.auth-input-wrap:focus-within{border-color:#f0b26d;box-shadow:0 0 0 4px rgba(249,115,22,.10)}
.auth-input-wrap span{display:inline-flex;align-items:center;justify-content:center;height:30px;padding:0 10px;border-radius:999px;background:#ecfdf3;color:#15803d;font-size:13px;font-weight:1000}
.auth-input-wrap input{height:48px!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important;min-height:0!important;flex:1;background:transparent!important}
.auth-input-wrap input:focus{outline:none!important;box-shadow:none!important}
.auth-main-btn{width:100%;height:52px!important;margin-top:18px;border-radius:19px!important;background:linear-gradient(135deg,#15803d,#22a34a)!important;color:#fff!important;box-shadow:0 18px 34px rgba(21,128,61,.22)!important}
.auth-switch-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:13px 14px;border-radius:22px;background:#fff7ed;border:1px solid #f2dec6;color:#68594c;font-size:13px;font-weight:850}
.auth-switch-card a{color:#15803d;text-decoration:none;font-weight:1000;white-space:nowrap}
.auth-verify-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:14px!important}
.auth-verify-actions .btn,.auth-small-form .btn{width:100%;height:50px!important;border-radius:18px!important}
.auth-small-form{margin-top:10px}.verify-code-input{text-align:center;font-size:25px!important;font-weight:1000!important;letter-spacing:.18em!important}
@media(max-width:840px){.auth-app-page{padding:12px!important;align-items:flex-start!important}.auth-app-shell,.auth-app-shell--signup{grid-template-columns:1fr;gap:12px}.auth-app-hero{min-height:auto;padding:20px;border-radius:30px}.auth-app-logo{width:56px;height:56px;border-radius:20px;font-size:28px}.auth-app-hero h1{font-size:32px}.auth-app-hero p:not(.auth-app-kicker){font-size:14px;margin-top:10px}.auth-app-preview{display:none}.auth-app-page .login-card.auth-app-card{border-radius:30px!important;padding:20px!important}.auth-card-head h2{font-size:25px}}
@media(max-width:430px){.auth-app-page{padding:10px!important}.auth-app-hero{padding:18px;border-radius:28px}.auth-app-page .login-card.auth-app-card{padding:18px!important;border-radius:28px!important}.auth-card-icon{width:52px;height:52px;border-radius:19px}.auth-switch-card{display:grid;gap:6px;text-align:center}.auth-switch-card a{white-space:normal}.auth-verify-actions{grid-template-columns:1fr!important}}


/* =====================================================
   Login / registro: un solo cuadro naranja superior
   Estilo app alineado al Resumen operativo
===================================================== */
.auth-app-page{
  min-height:100dvh!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:18px!important;
  background:linear-gradient(180deg,#fff7ed 0%,#fffaf4 46%,#ffffff 100%)!important;
  color:#23170f!important;
}
.auth-app-shell,
.auth-app-shell--signup{
  width:min(540px,100%)!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-items:start!important;
  gap:14px!important;
  margin:0 auto!important;
}
.auth-app-hero{
  width:100%!important;
  min-height:0!important;
  padding:22px!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#ff8a1a 0%,#f97316 55%,#ea580c 100%)!important;
  box-shadow:0 18px 44px rgba(234,88,12,.24)!important;
  color:#fff!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:start!important;
  gap:14px!important;
}
.auth-app-hero:before{
  right:-70px!important;
  top:-76px!important;
  width:180px!important;
  height:180px!important;
  background:rgba(255,255,255,.14)!important;
}
.auth-app-hero:after{
  left:auto!important;
  right:34px!important;
  bottom:-82px!important;
  width:150px!important;
  height:150px!important;
  background:rgba(255,255,255,.10)!important;
}
.auth-app-logo{
  width:58px!important;
  height:58px!important;
  border-radius:20px!important;
  font-size:29px!important;
}
.auth-app-kicker{
  letter-spacing:.08em!important;
}
.auth-app-hero h1{
  margin:0!important;
  max-width:100%!important;
  font-size:31px!important;
  line-height:1.02!important;
  letter-spacing:-.055em!important;
  color:#fff!important;
}
.auth-app-hero p:not(.auth-app-kicker){
  max-width:100%!important;
  margin:8px 0 0!important;
  font-size:14px!important;
  line-height:1.34!important;
  font-weight:800!important;
  color:rgba(255,255,255,.90)!important;
}
.auth-app-preview{
  display:none!important;
}
.auth-app-page .login-card.auth-app-card{
  width:100%!important;
  margin:0!important;
  padding:22px!important;
  border:1px solid #eee1d3!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 16px 38px rgba(67,20,7,.10)!important;
  color:#23170f!important;
}
.auth-app-page .login-card.auth-app-card .auth-app-kicker{
  color:#c2540a!important;
  opacity:1!important;
}
.auth-card-head{
  margin-bottom:16px!important;
}
.auth-card-icon{
  width:54px!important;
  height:54px!important;
  border-radius:19px!important;
  background:#fff7ed!important;
  box-shadow:inset 0 0 0 1px #f4ddc3!important;
}
.auth-card-head h2{
  color:#21160e!important;
  font-size:26px!important;
}
.auth-card-sub{
  color:#6f6257!important;
}
.auth-app-page label{
  color:#473729!important;
}
.auth-app-page input,
.auth-input-wrap{
  border-color:#eadccb!important;
}
.auth-app-page input:focus,
.auth-input-wrap:focus-within{
  border-color:#f59e0b!important;
  box-shadow:0 0 0 4px rgba(249,115,22,.12)!important;
  outline:none!important;
}
.auth-main-btn,
.auth-app-page .btn.ok{
  background:linear-gradient(135deg,#15803d,#22a34a)!important;
  color:#fff!important;
  box-shadow:0 16px 30px rgba(21,128,61,.24)!important;
}
.auth-app-page .btn.secondary{
  background:#fff!important;
  color:#15803d!important;
  border:1px solid #cfe9d7!important;
}
.auth-switch-card{
  background:#fff7ed!important;
  border-color:#f2dec6!important;
  color:#68594c!important;
}
.auth-switch-card a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:#ecfdf3!important;
  color:#15803d!important;
  text-decoration:none!important;
  font-weight:1000!important;
}
@media(max-width:430px){
  .auth-app-page{padding:10px!important}
  .auth-app-shell,.auth-app-shell--signup{gap:10px!important}
  .auth-app-hero{
    padding:18px!important;
    border-radius:24px!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .auth-app-logo{
    width:52px!important;
    height:52px!important;
    border-radius:18px!important;
  }
  .auth-app-hero h1{font-size:27px!important}
  .auth-app-page .login-card.auth-app-card{
    padding:18px!important;
    border-radius:24px!important;
  }
}

/* =========================================================
   PEDIDOS · impresión rápida trazable
   ========================================================= */
.pedido-print-form{
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.pedido-print-btn{
  min-height:44px!important;
  border:0!important;
  border-radius:16px!important;
  padding:11px 16px!important;
  background:linear-gradient(135deg,#16a34a,#22c55e)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:1000!important;
  letter-spacing:-.02em!important;
  box-shadow:0 12px 26px rgba(22,163,74,.22)!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.pedido-print-btn:hover{filter:brightness(.98);transform:translateY(-1px);}
.pedido-print-btn--thin{
  min-height:38px!important;
  padding:9px 12px!important;
  border-radius:14px!important;
  font-size:12px!important;
}
.pedido-print-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  margin:12px 0 14px;
  padding:14px;
  border-radius:24px;
  background:linear-gradient(135deg,#fff7ed,#ffffff 58%,#ecfdf5);
  border:1px solid rgba(251,146,60,.28);
  box-shadow:0 16px 34px rgba(67,20,7,.08);
}
.pedido-print-card > div{
  min-width:0;
  display:grid;
  gap:4px;
}
.pedido-print-card strong{
  color:#111;
  font-size:18px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.045em;
}
.pedido-print-card small{
  color:#64748b;
  font-size:12px;
  font-weight:800;
}
.pedido-print-audit-link{
  color:#166534;
  font-size:12px;
  font-weight:1000;
  text-decoration:none;
  white-space:nowrap;
}
.print-audit-hero{margin-bottom:14px;}
.print-audit-filter{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  align-items:center;
  gap:10px;
  margin-bottom:14px;
}
.print-audit-filter label{font-weight:1000;color:#111;}
.print-audit-filter select{min-height:44px;border:1px solid #e5e7eb;border-radius:14px;padding:0 12px;font-weight:800;background:#fff;}
.print-audit-card{overflow:hidden;}
.print-audit-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;}
.print-audit-head h2{margin:0;font-size:22px;color:#111;letter-spacing:-.04em;}
.print-audit-head span{color:#64748b;font-weight:900;font-size:12px;}
@media(max-width:760px){
  .pedido-print-card{
    grid-template-columns:minmax(0,1fr) auto;
    border-radius:20px;
    padding:12px;
  }
  .pedido-print-audit-link{grid-column:1/-1;justify-self:end;}
  .pedido-print-card strong{font-size:17px;}
  .print-audit-filter{grid-template-columns:1fr;}
}
@media(max-width:430px){
  .pedido-print-form{width:100%;}
  .pedido-print-btn--thin{width:100%;}
  .pedido-card--thin .pedido-print-form{grid-column:1/2;}
  .pedido-card--thin .pedido-view-btn--thin{grid-column:2/3;width:100%;}
  .pedido-print-card{grid-template-columns:1fr;}
  .pedido-print-card .pedido-print-form,.pedido-print-card .pedido-print-btn{width:100%;}
  .pedido-print-audit-link{justify-self:center;}
}
.pedido-card--thin{grid-template-columns:minmax(0,1fr) auto auto auto!important;}
@media(max-width:430px){.pedido-card--thin{grid-template-columns:minmax(0,1fr) auto!important;}}

/* =========================================================
   PEDIDO · vistazo rápido + acciones redondas
   ========================================================= */
.pedido-view-app--compact{
  width:min(680px,100%)!important;
  margin-bottom:84px!important;
}
.pedido-view-topbar--actions{
  grid-template-columns:52px minmax(0,1fr) 52px!important;
  margin-bottom:10px!important;
}
.pedido-top-print-form{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  margin:0;
}
.pedido-round-action{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  display:inline-grid!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  text-decoration:none!important;
  cursor:pointer!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(17,24,39,.13)!important;
  transition:transform .16s ease,filter .16s ease!important;
}
.pedido-round-action:hover{transform:translateY(-1px);filter:brightness(.98);}
.pedido-round-action svg{
  width:22px!important;
  height:22px!important;
  display:block!important;
}
.pedido-round-action--print{
  background:linear-gradient(135deg,#16a34a,#22c55e)!important;
  box-shadow:0 12px 24px rgba(22,163,74,.22)!important;
}
.pedido-round-action--view{
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 54%,#ea580c 100%)!important;
  box-shadow:0 12px 24px rgba(249,115,22,.20)!important;
}
.pedido-round-action--thin{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
}
.pedido-round-action--thin svg{
  width:20px!important;
  height:20px!important;
}
.pedido-identity-strip{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  margin:0 0 10px;
  padding:13px 14px;
  border-radius:22px;
  background:linear-gradient(135deg,#fff7ed 0%,#ffffff 78%);
  border:1px solid #efe6dc;
  box-shadow:0 12px 28px rgba(67,20,7,.055);
}
.pedido-identity-main{
  min-width:0;
  display:grid;
  gap:5px;
}
.pedido-identity-main strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111;
  font-size:23px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.pedido-identity-main small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#6f4322;
  font-size:12px;
  font-weight:850;
}
.pedido-detail-card--priority{
  padding:14px!important;
  border-radius:24px!important;
  margin-bottom:10px!important;
}
.pedido-detail-card__head--compact{
  align-items:center!important;
  margin-bottom:10px!important;
}
.pedido-detail-card__head--compact h2{
  font-size:22px!important;
}
.pedido-detail-card__head--compact span{
  padding:7px 10px!important;
  font-size:12px!important;
}
.pedido-items-list--compact{
  gap:8px!important;
}
.pedido-item-card--compact{
  padding:11px 12px!important;
  border-radius:17px!important;
}
.pedido-item-card--compact .pedido-item-card__top{
  gap:10px!important;
}
.pedido-item-card--compact .pedido-item-card__top strong{
  font-size:16px!important;
  line-height:1.12!important;
}
.pedido-item-card--compact .pedido-item-card__top small{
  font-size:11.5px!important;
  line-height:1.2!important;
}
.pedido-item-card--compact .pedido-item-card__top span{
  font-size:15px!important;
}
.pedido-total-inline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:11px;
  padding:14px 16px;
  border-radius:19px;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 58%,#ea580c 100%);
  color:#fff;
  box-shadow:0 14px 28px rgba(249,115,22,.20);
}
.pedido-total-inline span{
  color:rgba(255,255,255,.86);
  font-size:12px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pedido-total-inline strong{
  color:#fff;
  font-size:31px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.06em;
}
.pedido-mini-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-bottom:10px;
}
.pedido-mini-card{
  min-width:0;
  display:grid;
  gap:5px;
  padding:12px;
  border-radius:18px;
  background:#fff;
  border:1px solid #efe6dc;
  box-shadow:0 10px 24px rgba(67,20,7,.045);
}
.pedido-mini-card--wide{grid-column:1/-1;}
.pedido-mini-card span{
  color:#9a5a0a;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pedido-mini-card strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111;
  font-size:14px;
  line-height:1.08;
  font-weight:1000;
  letter-spacing:-.03em;
}
.pedido-mini-card--wide strong{
  white-space:normal;
  line-height:1.2;
}
.pedido-actions-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:13px;
  padding:12px;
  border-radius:20px;
  background:#fff;
  border:1px solid #efe6dc;
  box-shadow:0 10px 24px rgba(67,20,7,.045);
}
.pedido-actions-card textarea{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  min-height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.pedido-actions-card .pedido-copy-btn{
  min-height:40px!important;
  border-radius:14px!important;
  padding:9px 13px!important;
  font-size:12px!important;
}
.pedido-actions-card .pedido-print-audit-link{
  padding:9px 11px;
  border-radius:999px;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
}
.pedido-card--thin{
  grid-template-columns:minmax(0,1fr) auto auto auto!important;
}
.pedido-card--thin .pedido-print-form{
  width:42px!important;
}
.pedido-card--thin .pedido-view-btn--thin{
  display:none!important;
}
@media(max-width:760px){
  .pedido-view-app--compact{width:100%!important;margin-bottom:88px!important;}
  .pedido-view-topbar--actions{grid-template-columns:48px minmax(0,1fr) 48px!important;}
  .pedido-top-print-form{width:48px;height:48px;}
  .pedido-round-action{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;}
  .pedido-round-action--thin{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;}
  .pedido-identity-main strong{font-size:21px;}
  .pedido-total-inline strong{font-size:29px;}
  .pedido-mini-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:430px){
  .pedido-identity-strip{grid-template-columns:1fr;align-items:start;}
  .pedido-status{justify-self:start;}
  .pedido-detail-card--priority{padding:12px!important;border-radius:22px!important;}
  .pedido-detail-card__head--compact h2{font-size:21px!important;}
  .pedido-item-card--compact{padding:10px!important;}
  .pedido-total-inline{padding:13px 14px;border-radius:17px;}
  .pedido-total-inline strong{font-size:27px;}
  .pedido-mini-grid{grid-template-columns:1fr;}
  .pedido-actions-card{display:grid;grid-template-columns:1fr;}
  .pedido-actions-card .pedido-copy-btn{width:100%;}
  .pedido-actions-card .pedido-print-audit-link{text-align:center;}
  .pedido-card--thin{grid-template-columns:minmax(0,1fr) auto auto!important;}
  .pedido-card--thin .pedido-print-form{grid-column:auto!important;width:40px!important;}
}

/* =========================================================
   VER PEDIDO · orden + datos normales
   ========================================================= */
.pedido-order-title{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:end;
  gap:10px;
  margin:0 0 12px;
}
.pedido-order-title h2{
  margin:0!important;
  color:#111!important;
  font-size:23px!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.pedido-order-title h2::after{display:none!important;}
.pedido-order-title span{
  display:block;
  height:2px;
  border-radius:999px;
  background:#f1dfcc;
  transform:translateY(-4px);
}
.pedido-plain-meta{
  margin:4px 2px 12px;
  display:grid;
  gap:7px;
  color:#1f2937;
  font-size:14px;
  line-height:1.25;
  font-weight:700;
}
.pedido-plain-meta p{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.pedido-plain-meta b{
  color:#111;
  font-weight:1000;
}
@media(max-width:430px){
  .pedido-order-title h2{font-size:22px!important;}
  .pedido-plain-meta{font-size:13.5px;gap:6px;}
}

/* =========================================================
   VER PEDIDO · edición compacta sin cards extra
   ========================================================= */
.pedido-client-plain{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:8px;
  margin:0 2px 10px;
  padding:0 2px 2px;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.pedido-client-plain__main{
  min-width:0;
  display:grid;
  gap:4px;
}
.pedido-client-plain__main span,
.pedido-edit-field span{
  color:#9a5a0a;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pedido-client-plain__main strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111;
  font-size:24px;
  line-height:.98;
  font-weight:1000;
  letter-spacing:-.06em;
}
.pedido-client-plain__main small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#6f4322;
  font-size:11.5px;
  font-weight:850;
}
.pedido-edit-round{
  width:42px;
  height:42px;
  min-width:42px;
  min-height:42px;
  display:inline-grid;
  place-items:center;
  padding:0;
  border:0;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,#ff8a00 0%,#f97316 56%,#ea580c 100%);
  box-shadow:0 12px 24px rgba(249,115,22,.20);
  cursor:pointer;
}
.pedido-edit-round--small{
  position:absolute;
  top:0;
  right:0;
  width:38px;
  height:38px;
  min-width:38px;
  min-height:38px;
}
.pedido-edit-round svg{
  width:19px;
  height:19px;
  display:block;
}
.pedido-edit-round:hover{filter:brightness(.98);transform:translateY(-1px);}
.pedido-plain-meta--editable{
  position:relative;
  padding-right:48px!important;
  min-height:38px;
}
.pedido-edit-modal[hidden]{display:none!important;}
.pedido-edit-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:end center;
  padding:14px;
}
.pedido-edit-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(17,24,39,.38);
  backdrop-filter:blur(4px);
}
.pedido-edit-modal__box{
  position:relative;
  z-index:1;
  width:min(440px,100%);
  max-height:min(82vh,620px);
  overflow:auto;
  display:grid;
  gap:11px;
  margin:0;
  padding:16px;
  border-radius:24px;
  background:#fffaf4;
  border:1px solid #f0dfcc;
  box-shadow:0 24px 70px rgba(17,24,39,.26);
}
.pedido-edit-modal__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:1px;
}
.pedido-edit-modal__head strong{
  color:#111;
  font-size:21px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.055em;
}
.pedido-edit-modal__head button{
  width:36px;
  height:36px;
  min-width:36px;
  border:0;
  border-radius:999px;
  background:#fff;
  color:#5f321a;
  font-size:24px;
  line-height:1;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(67,20,7,.08);
}
.pedido-edit-field{
  display:grid;
  gap:6px;
  margin:0;
}
.pedido-edit-field input,
.pedido-edit-field select,
.pedido-edit-field textarea{
  width:100%;
  min-height:44px;
  padding:10px 12px;
  border-radius:15px;
  border:1px solid #ead9c8;
  background:#fff;
  color:#111;
  font-size:15px;
  font-weight:850;
  outline:none;
}
.pedido-edit-field textarea{
  min-height:80px;
  resize:vertical;
}
.pedido-edit-field input:focus,
.pedido-edit-field select:focus,
.pedido-edit-field textarea:focus{
  border-color:#fb923c;
  box-shadow:0 0 0 3px rgba(251,146,60,.14);
}
.pedido-edit-modal__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.pedido-edit-modal__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin-top:1px;
}
.pedido-edit-cancel,
.pedido-edit-save{
  min-height:44px;
  border:0;
  border-radius:15px;
  font-size:14px;
  font-weight:1000;
  cursor:pointer;
}
.pedido-edit-cancel{
  background:#fff;
  color:#6b7280;
  border:1px solid #ead9c8;
}
.pedido-edit-save{
  color:#fff;
  background:linear-gradient(135deg,#16a34a,#22c55e);
  box-shadow:0 12px 24px rgba(22,163,74,.18);
}
.pedido-edit-modal-open{overflow:hidden;}
@media(max-width:760px){
  .pedido-client-plain{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
  }
  .pedido-client-plain .pedido-status{
    grid-column:1/2;
    grid-row:2;
    justify-self:start;
  }
  .pedido-client-plain .pedido-edit-round{
    grid-column:2/3;
    grid-row:1/3;
    align-self:center;
  }
  .pedido-client-plain__main strong{font-size:22px;}
  .pedido-edit-modal{padding:10px;}
  .pedido-edit-modal__box{border-radius:22px;padding:14px;gap:10px;}
}
@media(max-width:430px){
  .pedido-client-plain{margin-bottom:8px;}
  .pedido-client-plain__main strong{font-size:21px;}
  .pedido-edit-modal__grid{grid-template-columns:1fr;}
  .pedido-edit-modal__actions{grid-template-columns:1fr;}
  .pedido-edit-round--small{width:36px;height:36px;min-width:36px;min-height:36px;}
  .pedido-plain-meta--editable{padding-right:44px!important;}
}

/* =========================================================
   PEDIDOS · agrupación por fecha + acciones abajo en móvil
   ========================================================= */
.pedidos-list--grouped{
  gap:10px!important;
}
.pedido-day-separator{
  display:flex;
  justify-content:center;
  margin:2px 0 2px;
}
.pedido-day-separator span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:7px 14px;
  border-radius:12px;
  background:#fff;
  border:1px solid #e8ddd1;
  color:#666;
  font-size:12px;
  line-height:1;
  font-weight:900;
  box-shadow:0 4px 10px rgba(67,20,7,.06);
}
.pedido-card--mobile-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
  padding:12px!important;
}
.pedido-card__thin-main{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
}
.pedido-card__thin-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}
.pedido-card__thin-actions .pedido-print-form{
  width:auto!important;
  margin:0!important;
  display:grid;
  place-items:center;
}
.pedido-card__thin-actions .pedido-round-action--thin{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
}
@media(min-width:761px){
  .pedido-card--mobile-actions{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
  }
}
@media(max-width:760px){
  .pedido-day-separator{margin:6px 0 0;}
  .pedido-card--mobile-actions{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .pedido-card__thin-main{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
  }
  .pedido-card__thin-total{
    align-self:center;
    font-size:20px!important;
  }
  .pedido-card__thin-actions{
    justify-content:flex-end;
    padding-top:2px;
  }
}

/* =========================================================
   PEDIDOS · botones circulares en una sola línea abajo
   ========================================================= */
.pedido-card--mobile-actions{
  grid-template-columns:minmax(0,1fr)!important;
  align-items:stretch!important;
}
.pedido-card--mobile-actions .pedido-card__thin-actions{
  grid-column:1/-1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  padding-top:2px!important;
}
.pedido-card--mobile-actions .pedido-print-form{
  width:auto!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
}
.pedido-card--mobile-actions .pedido-round-action--thin{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  flex:0 0 44px!important;
}
@media(max-width:760px){
  .pedido-card--mobile-actions{
    gap:8px!important;
  }
  .pedido-card--mobile-actions .pedido-card__thin-actions{
    justify-content:flex-start!important;
  }
}

/* Compartir menú / Open Graph */
.share-preview-app .appearance-topbar h1{font-size:20px!important}
.share-preview-card-shell{overflow:hidden}
.share-preview-card{display:grid;grid-template-columns:140px minmax(0,1fr);gap:14px;align-items:center;padding:12px;border:1px solid #eadfce;border-radius:22px;background:#fffaf4;box-shadow:0 14px 28px rgba(67,20,7,.06)}
.share-preview-card__media{position:relative;width:100%;aspect-ratio:1.91/1;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#fff7ed,#fde7c8);display:grid;place-items:center;color:#8a5a2b;font-weight:900}
.share-preview-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.share-preview-card__body{min-width:0;display:grid;gap:5px}
.share-preview-card__body strong{font-size:16px;line-height:1.14;color:#1f1710;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.share-preview-card__body span{font-size:13px;line-height:1.35;color:#5d554c;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.share-preview-card__body small{font-size:12px;color:#8a7b6c;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.share-upload-layout{align-items:stretch!important}
.share-current-preview img{object-fit:cover!important}
.share-link-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.share-link-input{width:100%;height:48px;border:1px solid #eadfce;border-radius:16px;background:#fffaf4;color:#2d2218;font-weight:800;padding:0 14px;outline:none}
.share-copy-btn{height:48px;border:0;border-radius:16px;padding:0 18px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 14px 24px rgba(22,163,74,.20)}
.share-copy-btn:active{transform:scale(.98)}
@media(max-width:640px){.share-preview-card{grid-template-columns:1fr;gap:10px}.share-preview-card__media{border-radius:16px}.share-link-copy{grid-template-columns:1fr}.share-copy-btn{width:100%}}


/* =====================================================
   Barra inferior: menú central con opciones inteligentes
===================================================== */
.bottom-menu-backdrop,
.bottom-menu-sheet{display:none}

@media(max-width:979px){
  .bottom-nav button{font:inherit}
  .bottom-nav__fab{appearance:none;cursor:pointer}
  .bottom-nav__fab:focus-visible{outline:4px solid rgba(249,115,22,.24);outline-offset:3px}
  .bottom-nav__fab[aria-expanded="true"]{filter:saturate(1.04);box-shadow:0 18px 34px rgba(245,102,0,.38),0 0 0 8px rgba(249,115,22,.10)!important}

  .bottom-menu-backdrop{position:fixed;inset:0;z-index:28;display:block;background:rgba(31,20,12,.12);opacity:0;pointer-events:none;transition:opacity .18s ease;backdrop-filter:blur(1px)}
  .bottom-menu-sheet{position:fixed;left:50%;bottom:max(94px,calc(86px + env(safe-area-inset-bottom)));z-index:36;display:grid;grid-template-columns:1fr;gap:8px;width:min(290px,calc(100vw - 48px));padding:10px;border:1px solid #eadfce;border-radius:26px;background:rgba(255,255,255,.98);box-shadow:0 22px 54px rgba(67,20,7,.18);transform:translate(-50%,14px) scale(.98);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;backdrop-filter:blur(14px)}
  .bottom-menu-sheet::after{content:"";position:absolute;left:50%;bottom:-8px;width:18px;height:18px;background:rgba(255,255,255,.98);border-right:1px solid #eadfce;border-bottom:1px solid #eadfce;transform:translateX(-50%) rotate(45deg);border-radius:0 0 5px 0}
  .bottom-menu-option{position:relative;z-index:1;display:flex;align-items:center;gap:12px;width:100%;min-height:54px;padding:10px 13px;border:0;border-radius:19px;background:#fff7ed;color:#352317;text-decoration:none;box-shadow:inset 0 0 0 1px #f1ddc5;cursor:pointer;text-align:left}
  .bottom-menu-option span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:14px;background:#fff;color:#7c2d12;font-size:19px;box-shadow:0 8px 18px rgba(67,20,7,.06)}
  .bottom-menu-option strong{font-size:14px;line-height:1.1;color:#2b1b11;font-weight:1000;letter-spacing:-.02em}
  .bottom-menu-option--copy{background:linear-gradient(135deg,#dcfce7,#f0fdf4);box-shadow:inset 0 0 0 1px #bbf7d0}
  .bottom-menu-option--copy span{color:#166534}
  .bottom-menu-option:active{transform:scale(.985)}

  body.bottom-menu-open .bottom-menu-backdrop{opacity:1;pointer-events:auto}
  body.bottom-menu-open .bottom-menu-sheet{opacity:1;pointer-events:auto;transform:translate(-50%,0) scale(1)}

  .admin-share-toast{position:fixed;left:50%;bottom:max(112px,calc(102px + env(safe-area-inset-bottom)));z-index:1200;max-width:min(92vw,360px);padding:11px 15px;border-radius:999px;background:#111827;color:#fff;font-size:12.5px;font-weight:1000;text-align:center;box-shadow:0 18px 38px rgba(17,24,39,.22);transform:translate(-50%,16px);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
  .admin-share-toast.is-visible{opacity:1;transform:translate(-50%,0)}
  .admin-share-toast.is-error{background:#991b1b}
}

@media(max-width:380px){
  .bottom-menu-sheet{width:min(276px,calc(100vw - 34px));bottom:max(90px,calc(82px + env(safe-area-inset-bottom)))}
  .bottom-menu-option{min-height:50px;border-radius:17px;padding:9px 11px}
  .bottom-menu-option span{width:33px;height:33px;border-radius:13px;font-size:17px}
  .bottom-menu-option strong{font-size:13.5px}
}

/* =========================================================
   MI NEGOCIO · concepto del negocio
   ========================================================= */
.concepto-option-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.concepto-option{
  position:relative;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:12px;
  min-height:96px;
  padding:16px;
  border-radius:24px;
  background:#fff;
  border:1px solid #eadfce;
  box-shadow:0 14px 28px rgba(67,20,7,.055);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.concepto-option:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 34px rgba(67,20,7,.09);
  border-color:#fed7aa;
}
.concepto-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.concepto-option__icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:#fff7ed;
  border:1px solid #f3dfc8;
  font-size:26px;
}
.concepto-option__body{
  min-width:0;
  display:grid;
  gap:4px;
}
.concepto-option__body strong{
  color:#171717;
  font-size:17px;
  line-height:1.1;
  letter-spacing:-.035em;
  font-weight:1000;
}
.concepto-option__body small{
  color:#75675b;
  font-size:12px;
  line-height:1.35;
  font-weight:800;
}
.concepto-option.is-selected{
  background:linear-gradient(135deg,#fff7ed 0%,#ffffff 100%);
  border-color:#fb923c;
  box-shadow:0 20px 38px rgba(249,115,22,.13);
}
.concepto-option.is-selected::after{
  content:'✓';
  position:absolute;
  top:12px;
  right:12px;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(135deg,#ff922f,#f97316);
  color:#fff;
  font-size:14px;
  font-weight:1000;
  box-shadow:0 10px 18px rgba(249,115,22,.24);
}
.concepto-option.is-selected .concepto-option__icon{
  background:#fff1de;
  border-color:#fed7aa;
}
.concepto-preview .razon-preview__badge{
  font-size:31px;
}
@media(max-width:760px){
  .concepto-option-grid{grid-template-columns:1fr 1fr;gap:9px}
  .concepto-option{grid-template-columns:42px minmax(0,1fr);min-height:76px;padding:11px;border-radius:19px;gap:8px}
  .concepto-option__icon{width:42px;height:42px;border-radius:16px;font-size:22px}
  .concepto-option__body strong{font-size:13px;line-height:1.05}
  .concepto-option__body small{display:none}
  .concepto-option.is-selected::after{top:7px;right:7px;width:22px;height:22px;font-size:11px}
}
@media(max-width:390px){
  .concepto-option-grid{gap:7px}
  .concepto-option{grid-template-columns:38px minmax(0,1fr);padding:9px;border-radius:17px;gap:7px}
  .concepto-option__icon{width:38px;height:38px;border-radius:14px;font-size:20px}
  .concepto-option__body strong{font-size:12px}
}


/* =====================================================
   SUPERADMIN · primera versión organizada y responsiva
   Solo estructura visual: mantiene rutas, formularios y acciones.
===================================================== */
.nav--superadmin-desktop{
  align-items:center!important;
  gap:8px!important;
  overflow:visible!important;
}
.super-nav-groups{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  min-width:0;
}
.super-nav-group{
  position:relative;
  min-width:0;
}
.super-nav-group summary{
  list-style:none;
  cursor:pointer;
  user-select:none;
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:6px;
  min-height:38px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #f3dfc8;
  background:#fffaf5;
  color:#574434;
  font-size:12px;
  font-weight:1000;
}
.super-nav-group summary::-webkit-details-marker{display:none}
.super-nav-group summary::after{
  content:"⌄";
  font-size:12px;
  line-height:1;
  opacity:.72;
}
.super-nav-group[open] summary,
.super-nav-group.is-active summary{
  background:#fff3df;
  color:#7c2d12;
  border-color:#f0c995;
  box-shadow:0 8px 18px rgba(217,119,6,.08);
}
.super-nav-menu{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  z-index:10080;
  width:max-content;
  min-width:220px;
  max-width:min(320px,calc(100vw - 28px));
  padding:8px;
  border:1px solid #eadfce;
  border-radius:20px;
  background:#fff;
  box-shadow:0 24px 60px rgba(22,14,10,.16);
}
.super-nav-menu a{
  display:flex!important;
  align-items:center;
  width:100%;
  min-height:42px;
  padding:10px 12px!important;
  border-radius:14px!important;
  background:transparent!important;
  border:0!important;
  color:#4b3829!important;
  white-space:normal!important;
}
.super-nav-menu a:hover,
.super-nav-menu a.active{
  background:#fff7ed!important;
  color:#7c2d12!important;
}
.super-nav-logout{
  flex:0 0 auto;
}
.nav--superadmin-mobile{
  display:grid!important;
  gap:12px!important;
}
.super-nav-mobile-section{
  display:grid;
  gap:7px;
  padding:10px;
  border:1px solid #f0e1d0;
  border-radius:22px;
  background:linear-gradient(180deg,#fff 0%,#fffaf5 100%);
}
.super-nav-mobile-section > strong{
  padding:2px 4px 0;
  font-size:12px;
  line-height:1;
  font-weight:1000;
  color:#8a4a15;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.nav--superadmin-mobile .logout-link{
  justify-content:center!important;
}
.superadmin-page-head{
  margin-bottom:16px!important;
}
.superadmin-page-head p{
  margin-top:6px!important;
}
.superadmin-head-actions{
  flex-wrap:wrap;
}
.superadmin-kpi-sections{
  display:grid;
  gap:16px;
  margin-bottom:18px;
}
.superadmin-section-card,
.superadmin-modules{
  width:100%;
  min-width:0;
  padding:18px;
  border:1px solid #ebe2d7;
  border-radius:28px;
  background:linear-gradient(180deg,#fff 0%,#fffdfb 100%);
  box-shadow:0 18px 38px rgba(67,20,7,.055);
  overflow:hidden;
}
.superadmin-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.superadmin-section-head h2,
.superadmin-users-head h2{
  margin:0;
  font-size:19px;
  line-height:1.1;
  color:#17120e;
  letter-spacing:-.04em;
  font-weight:1000;
}
.superadmin-section-head p,
.superadmin-users-head p{
  margin:5px 0 0;
  color:#766d61;
  font-size:13px;
  line-height:1.35;
  font-weight:760;
}
.superadmin-kpi-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:12px;
}
.superadmin-kpi-card{
  min-width:0;
  min-height:124px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:10px;
  padding:14px;
  border:1px solid #f0e3d5;
  border-radius:22px;
  background:#fffaf5;
  overflow:hidden;
}
.superadmin-kpi-card__top{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
.superadmin-kpi-card__icon{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#fff;
  box-shadow:inset 0 0 0 1px #f1e3d4;
  font-size:18px;
}
.superadmin-kpi-card__label{
  min-width:0;
  color:#665a50;
  font-size:12px;
  line-height:1.15;
  font-weight:1000;
  overflow-wrap:anywhere;
}
.superadmin-kpi-card__value{
  color:#20130a;
  font-size:clamp(25px,4.5vw,34px);
  line-height:1;
  font-weight:1000;
  letter-spacing:-.06em;
}
.superadmin-kpi-card__link{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid #eadfce;
  color:#7c2d12;
  text-decoration:none;
  font-size:12px;
  line-height:1;
  font-weight:1000;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.superadmin-section-head--main{
  margin-bottom:16px;
}
.superadmin-module-block{
  min-width:0;
  margin-top:16px;
}
.superadmin-module-block:first-of-type{
  margin-top:0;
}
.superadmin-module-block h3{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 10px;
  font-size:16px;
  line-height:1;
  font-weight:1000;
  color:#321b0c;
  letter-spacing:-.035em;
}
.superadmin-module-block h3::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--brand),var(--brand2));
  box-shadow:0 0 0 5px rgba(217,119,6,.10);
}
.superadmin-module-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:12px;
}
.superadmin-module-card{
  min-width:0;
  min-height:146px;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:15px;
  border:1px solid #ece3d7;
  border-radius:23px;
  background:#fff;
  color:#17120e;
  text-decoration:none;
  box-shadow:0 12px 24px rgba(67,20,7,.045);
  overflow:hidden;
}
.superadmin-module-card:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 32px rgba(67,20,7,.075);
}
.superadmin-module-card__icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:17px;
  background:#fff7ed;
  font-size:22px;
}
.superadmin-module-card strong{
  display:block;
  margin-top:2px;
  font-size:16px;
  line-height:1.08;
  font-weight:1000;
  letter-spacing:-.035em;
  color:#17120e;
  overflow-wrap:anywhere;
}
.superadmin-module-card small{
  display:block;
  color:#6b6158;
  font-size:12.5px;
  line-height:1.3;
  font-weight:760;
  overflow-wrap:anywhere;
}
.superadmin-users-card{
  width:100%;
  min-width:0;
  margin-top:18px;
  overflow:hidden;
}
.superadmin-users-head{
  margin-bottom:12px;
}
.superadmin-users-table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.superadmin-users-table{
  margin-bottom:0!important;
}
@media(min-width:761px){
  .superadmin-users-table{
    min-width:860px;
  }
}
@media(max-width:1120px){
  .super-nav-groups{
    gap:6px;
  }
  .super-nav-group summary{
    padding:8px 10px;
  }
}
@media(max-width:979px){
  .superadmin-head-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .superadmin-head-actions .btn{
    width:100%!important;
  }
}
@media(max-width:760px){
  .superadmin-page-head{
    gap:12px!important;
  }
  .superadmin-head-actions{
    grid-template-columns:1fr!important;
  }
  .superadmin-section-card,
  .superadmin-modules{
    padding:14px;
    border-radius:24px;
  }
  .superadmin-section-head{
    margin-bottom:12px;
  }
  .superadmin-kpi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }
  .superadmin-kpi-card{
    min-height:112px;
    padding:11px;
    border-radius:19px;
  }
  .superadmin-kpi-card__icon{
    width:32px;
    height:32px;
    flex-basis:32px;
    font-size:16px;
    border-radius:12px;
  }
  .superadmin-kpi-card__label{
    font-size:11px;
  }
  .superadmin-kpi-card__link{
    min-height:31px;
    font-size:11px;
    padding:6px 8px;
  }
  .superadmin-module-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }
  .superadmin-module-card{
    min-height:142px;
    padding:12px;
    border-radius:20px;
  }
  .superadmin-module-card__icon{
    width:39px;
    height:39px;
    font-size:19px;
    border-radius:15px;
  }
  .superadmin-module-card strong{
    font-size:14.5px;
  }
  .superadmin-module-card small{
    font-size:11.3px;
  }
}
@media(max-width:390px){
  .superadmin-kpi-grid,
  .superadmin-module-grid{
    grid-template-columns:1fr;
  }
  .superadmin-kpi-card{
    min-height:104px;
  }
  .superadmin-module-card{
    min-height:126px;
  }
}

/* Panel: estado PRO */
.pro-panel-status{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  margin:0 0 18px;
  padding:22px;
  border-radius:28px;
  border:1px solid rgba(249,115,22,.28);
  box-shadow:0 18px 44px rgba(154,52,18,.12);
  overflow:hidden;
  position:relative;
}
.pro-panel-status:before{
  content:'';
  position:absolute;
  inset:auto -44px -88px auto;
  width:220px;
  height:220px;
  border-radius:999px;
  background:rgba(255,255,255,.42);
  pointer-events:none;
}
.pro-panel-status--available{
  background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 42%,#fdba74 100%);
}
.pro-panel-status--active,
.pro-panel-status--paid{
  background:linear-gradient(135deg,#ecfdf5 0%,#dcfce7 44%,#86efac 100%);
  border-color:rgba(22,163,74,.24);
  box-shadow:0 18px 44px rgba(22,101,52,.12);
}
.pro-panel-status--expired{
  background:linear-gradient(135deg,#fff7ed 0%,#fee2e2 48%,#fbbf24 100%);
  border-color:rgba(245,158,11,.32);
}
.pro-panel-status__body,
.pro-panel-status__action,
.pro-panel-status__button{
  position:relative;
  z-index:1;
}
.pro-panel-status__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  background:#fff;
  color:#ea580c;
  font-size:12px;
  font-weight:1000;
  letter-spacing:-.02em;
  margin-bottom:8px;
}
.pro-panel-status--active .pro-panel-status__eyebrow,
.pro-panel-status--paid .pro-panel-status__eyebrow{
  color:#15803d;
}
.pro-panel-status h2{
  margin:0;
  color:#2d1c10;
  font-size:clamp(22px,3vw,34px);
  line-height:.98;
  letter-spacing:-.045em;
  font-weight:1000;
}
.pro-panel-status__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.pro-panel-status__chips strong,
.pro-panel-status__ticker strong{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.86);
  color:#431407;
  font-size:12px;
  font-weight:1000;
  letter-spacing:-.02em;
  white-space:nowrap;
}
.pro-panel-status__action{
  margin:0;
}
.pro-panel-status__button{
  min-height:50px;
  border-radius:999px;
  padding:0 24px;
  white-space:nowrap;
  font-weight:1000;
  box-shadow:0 14px 28px rgba(234,88,12,.25);
}
.pro-panel-status--active .pro-panel-status__button,
.pro-panel-status--paid .pro-panel-status__button{
  background:#16a34a!important;
  border-color:#16a34a!important;
  box-shadow:0 14px 28px rgba(22,163,74,.22);
}
.pro-panel-status__ticker{
  margin-top:12px;
  max-width:100%;
  overflow:hidden;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.30);
}
.pro-panel-status__ticker-track{
  display:flex;
  gap:8px;
  width:max-content;
  padding:7px;
  animation:tmdProTicker 24s linear infinite;
}
.pro-panel-status__ticker:hover .pro-panel-status__ticker-track{
  animation-play-state:paused;
}
@keyframes tmdProTicker{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media(max-width:760px){
  .pro-panel-status{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:12px 14px;
    border-radius:18px;
    margin-bottom:12px;
  }
  .pro-panel-status:before{
    width:140px;
    height:140px;
    inset:auto -28px -56px auto;
  }
  .pro-panel-status__body{
    min-width:0;
  }
  .pro-panel-status__eyebrow{
    min-height:20px;
    padding:3px 8px;
    font-size:10px;
    margin-bottom:4px;
  }
  .pro-panel-status h2{
    font-size:18px;
    line-height:1.05;
  }
  .pro-panel-status__chips{
    flex-wrap:nowrap;
    gap:6px;
    margin-top:8px;
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:2px;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .pro-panel-status__chips::-webkit-scrollbar{
    display:none;
  }
  .pro-panel-status__chips strong,
  .pro-panel-status__ticker strong{
    flex:0 0 auto;
    min-height:24px;
    font-size:10px;
    padding:4px 7px;
    white-space:nowrap;
  }
  .pro-panel-status__action{
    margin-left:auto;
  }
  .pro-panel-status__button{
    width:auto;
    min-height:34px;
    min-width:94px;
    padding:0 14px;
    font-size:12px;
    box-shadow:0 8px 18px rgba(234,88,12,.20);
  }
  .pro-panel-status__ticker{
    margin-top:8px;
    border-radius:999px;
  }
  .pro-panel-status__ticker-track{
    padding:5px;
    animation-duration:18s;
  }
}

@media(max-width:520px){
  .pro-panel-status{
    padding:10px 12px;
    gap:8px;
    border-radius:16px;
  }
  .pro-panel-status h2{
    font-size:16px;
  }
  .pro-panel-status__button{
    min-width:82px;
    min-height:32px;
    padding:0 12px;
    font-size:11px;
  }
  .pro-panel-status__chips{
    margin-top:6px;
  }
  .pro-panel-status__chips strong,
  .pro-panel-status__ticker strong{
    font-size:9px;
    padding:4px 6px;
  }
}

/* Operación Interna */
.operacion-head h1,.op-topbar h1{margin:0;font-size:clamp(1.35rem,4vw,2rem)}
.op-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding:14px 16px;border-radius:22px;background:#111827;color:#fff;box-shadow:0 18px 45px rgba(15,23,42,.16)}
.op-back{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.14);color:#fff;text-decoration:none;font-size:34px;line-height:1;font-weight:800}.op-back:hover{color:#fff;transform:translateY(-1px)}
.op-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}.op-kpis article{border-radius:24px;background:#fff;padding:18px;box-shadow:0 18px 50px rgba(15,23,42,.08);border:1px solid rgba(148,163,184,.2)}.op-kpis span{display:block;font-size:.82rem;color:#64748b;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.op-kpis strong{font-size:1.55rem;color:#0f172a}
.op-hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.op-hub-card{min-height:150px;border-radius:28px;padding:22px;color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 18px 40px rgba(15,23,42,.18);transition:.18s ease}.op-hub-card:hover{color:#fff;transform:translateY(-2px)}.op-hub-card span{font-size:2.4rem}.op-hub-card strong{font-size:1.22rem}.op-hub-card--clients{background:linear-gradient(135deg,#0ea5e9,#2563eb)}.op-hub-card--counter{background:linear-gradient(135deg,#f97316,#dc2626)}.op-hub-card--tables{background:linear-gradient(135deg,#10b981,#047857)}.op-hub-card--settings{background:linear-gradient(135deg,#6366f1,#7c3aed)}
.op-layout-2{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:16px}.op-form label{font-weight:800;margin-top:10px}.op-form input,.op-form textarea,.op-form select{width:100%}.op-list-card,.op-form-card,.op-config-card{border-radius:26px}.op-search-row{display:flex;gap:10px;align-items:center}.op-search-row input{flex:1}.op-client-list{display:grid;gap:10px;margin-top:14px}.op-client-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}.op-client-row span{display:block;color:#64748b;font-size:.9rem}
.op-pos-app{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;align-items:start}.op-pos-catalog{min-height:70vh}.op-sticky-head{position:sticky;top:76px;z-index:4;background:linear-gradient(180deg,#f6f7fb 80%,rgba(246,247,251,0));padding-bottom:12px}.op-search-row--catalog input{border-radius:18px;padding:14px 16px;font-size:1.05rem}.op-cat-tabs{display:flex;gap:8px;overflow:auto;padding:10px 0}.op-cat-tabs button{border:0;border-radius:999px;background:#fff;color:#0f172a;padding:10px 14px;font-weight:900;box-shadow:0 8px 20px rgba(15,23,42,.08);white-space:nowrap}.op-cat-tabs button.is-active{background:#111827;color:#fff}.op-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.op-product-card{position:relative;display:flex;flex-direction:column;text-align:left;gap:10px;border:1px solid #e2e8f0;background:#fff;border-radius:22px;padding:12px;box-shadow:0 14px 35px rgba(15,23,42,.08);min-height:212px;cursor:pointer}.op-product-card:hover{transform:translateY(-1px)}.op-product-img{height:104px;border-radius:18px;background:#fff7ed;display:grid;place-items:center;font-size:2rem;overflow:hidden}.op-product-img img{width:100%;height:100%;object-fit:cover}.op-product-info strong{display:block;color:#0f172a;font-size:1rem;line-height:1.15}.op-product-info em{display:block;color:#16a34a;font-style:normal;font-weight:900;margin-top:5px}.op-product-info small{display:block;color:#64748b;margin-top:3px}.op-badges{position:absolute;right:10px;top:10px;display:flex;gap:5px;flex-wrap:wrap}.op-badges i{font-style:normal;border-radius:999px;background:#111827;color:#fff;font-size:.7rem;padding:4px 7px}.op-product-card.is-hidden{opacity:.72}.op-product-card.is-sold .op-product-img{filter:grayscale(1)}
.op-cart-panel{position:sticky;top:84px;background:#fff;border-radius:28px;border:1px solid rgba(148,163,184,.22);box-shadow:0 18px 45px rgba(15,23,42,.12);padding:16px;max-height:calc(100vh - 105px);overflow:auto}.op-ticket-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.op-ticket-head span{font-size:.78rem;color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.op-ticket-head strong{display:block;font-size:1.28rem;color:#0f172a}.op-client-chip{margin:10px 0;padding:10px 12px;border-radius:16px;background:#f1f5f9;color:#0f172a;font-weight:800}.op-cart-list{display:grid;gap:10px;margin:12px 0}.op-cart-item{display:flex;justify-content:space-between;gap:10px;border-radius:16px;background:#fff7ed;border:1px solid #fed7aa;padding:10px}.op-cart-item strong,.op-cart-item small,.op-cart-item span{display:block}.op-cart-item small{color:#7c2d12;font-size:.8rem;margin-top:3px}.op-cart-item span{color:#0f172a;font-weight:900;margin-top:4px}.op-cart-item button{width:30px;height:30px;border:0;border-radius:10px;background:#111827;color:#fff;font-weight:900;margin-left:4px}.op-discount-box,.op-fields,.op-total-box{border-top:1px solid #e2e8f0;margin-top:12px;padding-top:12px}.op-discount-box label,.op-fields label{font-weight:900;color:#334155;font-size:.85rem}.op-discount-row{display:grid;grid-template-columns:120px 1fr;gap:8px}.op-fields select,.op-fields textarea,.op-discount-row input,.op-discount-row select{width:100%;border-radius:14px}.op-total-box div{display:flex;align-items:center;justify-content:space-between;margin:7px 0;color:#475569}.op-total-box strong{color:#0f172a}.op-total-box .big{font-size:1.28rem;color:#0f172a}.op-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.op-actions .btn:last-child:nth-child(odd),.op-actions .btn:first-child:last-child{grid-column:1/-1}.op-status{min-height:22px;font-weight:900;margin-top:10px}.op-status.is-ok{color:#16a34a}.op-status.is-error{color:#dc2626}
.op-modal{position:fixed;inset:0;z-index:999;display:none}.op-modal.is-open{display:block}.op-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55);backdrop-filter:blur(3px)}.op-modal__card{position:relative;margin:7vh auto;background:#fff;border-radius:28px;padding:20px;width:min(560px,92vw);max-height:86vh;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.25)}.op-modal__card--client{width:min(520px,92vw)}.op-modal__close{position:absolute;right:14px;top:14px;border:0;background:#f1f5f9;border-radius:12px;width:38px;height:38px;font-size:24px}.op-group{border:1px solid #e2e8f0;border-radius:18px;padding:12px;margin:10px 0}.op-group h3{margin:0 0 10px;color:#0f172a}.op-option{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;padding:9px;border-radius:14px;background:#f8fafc;margin:6px 0}.op-option em{font-style:normal;font-size:.7rem;border-radius:999px;background:#111827;color:#fff;padding:3px 6px}.op-option.is-hidden{opacity:.72}.op-qty-row{display:flex;align-items:center;justify-content:center;gap:14px;margin:16px 0}.op-qty-row button{width:46px;height:46px;border:0;border-radius:16px;background:#111827;color:#fff;font-size:24px;font-weight:900}.op-qty-row strong{font-size:1.4rem}.op-client-results{display:grid;gap:8px;margin-top:12px;max-height:360px;overflow:auto}.op-client-results button{text-align:left;border:1px solid #e2e8f0;background:#f8fafc;border-radius:15px;padding:11px}.op-client-results span{display:block;color:#64748b}
.op-mesas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}.op-mesa-card{border-radius:24px;padding:18px;min-height:132px;background:#fff;color:#0f172a;text-decoration:none;box-shadow:0 18px 45px rgba(15,23,42,.1);border:1px solid #e2e8f0;display:flex;flex-direction:column;justify-content:space-between}.op-mesa-card strong{font-size:1.25rem}.op-mesa-card span{font-weight:900;color:#16a34a}.op-mesa-card em{font-style:normal;font-size:1.25rem;font-weight:900}.op-mesa-card.is-open{background:#111827;color:#fff}.op-mesa-card.is-open span{color:#fbbf24}.op-mesa-card.is-open em{color:#fff}.op-config-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:14px}.op-config-tabs a{padding:10px 14px;border-radius:999px;background:#fff;color:#0f172a;text-decoration:none;font-weight:900}.op-config-tabs a.is-active{background:#111827;color:#fff}.op-table-config{display:grid;gap:8px}.op-table-row{display:grid;grid-template-columns:1fr 100px 90px;gap:8px;align-items:center;background:#f8fafc;border-radius:16px;padding:10px}
@media (max-width: 980px){.op-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op-layout-2,.op-pos-app{grid-template-columns:1fr}.op-cart-panel{position:relative;top:0;max-height:none}.op-sticky-head{top:0}.op-actions{grid-template-columns:1fr 1fr}.op-kpis{grid-template-columns:1fr}.op-table-row{grid-template-columns:1fr}.op-topbar{border-radius:18px}.op-products{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
@media (max-width: 560px){.op-hub-grid{grid-template-columns:1fr}.op-actions{grid-template-columns:1fr}.op-products{grid-template-columns:1fr 1fr}.op-product-card{min-height:186px;padding:9px}.op-product-img{height:86px}.op-ticket-head strong{font-size:1.05rem}}


/* Operación interna: cards app con emojis cuadrados */
.operacion-app-hub .operation-hub-card .module-card__icon,
.op-config-cards .op-config-card-button .module-card__icon{
  border-radius:18px!important;
  width:58px!important;
  height:58px!important;
  display:grid!important;
  place-items:center!important;
}
.operacion-app-hub .operation-hub-card.module-card--featured .module-card__icon{
  border-radius:22px!important;
}
.op-config-head{margin-bottom:14px!important}
.op-config-cards{margin:0 0 16px!important}
.op-config-card-button{min-height:132px!important}
.op-config-card-button.is-active{
  border-color:#f97316!important;
  box-shadow:0 20px 38px rgba(249,115,22,.16)!important;
}
.op-config-card-button.is-active::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:inset 0 0 0 2px rgba(249,115,22,.42);
  pointer-events:none;
}
@media(max-width:760px){
  .op-config-card-button{min-height:118px!important;padding:13px!important}
  .op-config-cards .op-config-card-button .module-card__icon{width:48px!important;height:48px!important;border-radius:16px!important;font-size:23px!important}
}


/* CATÁLOGO · card IA */
.catalogo-ai-card .module-card__icon{
  background:#fff1de!important;
  color:#ff7a00!important;
}
.catalogo-ai-card{
  border-color:#f3d2a8!important;
  background:linear-gradient(180deg,#fff 0%,#fffaf5 100%)!important;
}

/* Banner promocional · hub con tarjetas */
.banner-hub-card{padding:18px!important}
.banner-hub-title{margin:0 0 14px!important;font-size:22px!important;line-height:1.05!important;letter-spacing:-.04em!important;color:#17120e!important;font-weight:1000!important}
.banner-module-grid{margin:0!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.banner-module-card{min-height:138px!important;text-decoration:none!important}
.banner-module-card strong{margin-top:8px!important}
.banner-module-card small{display:none!important}
@media(max-width:760px){
  .banner-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .banner-module-card{min-height:128px!important;padding:13px!important;border-radius:22px!important}
}
@media(max-width:390px){
  .banner-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .banner-module-card{min-height:118px!important}
}

/* Operación interna · datos en tarjetas */
.module-grid--dashboard .module-card.module-card--app{
  justify-content:flex-start!important;
}
.module-grid--dashboard .operation-card__meta{
  display:block!important;
  margin-top:2px!important;
  color:#8a725e!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1.25!important;
}
.module-grid--dashboard .operation-card__meta.is-alert{
  width:max-content!important;
  max-width:100%!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#fff1de!important;
  color:#9a3412!important;
  border:1px solid #fed7aa!important;
}
@media(max-width:620px){
  .module-grid--dashboard .operation-card__meta{
    font-size:11.5px!important;
  }
  .module-grid--dashboard .operation-card__meta.is-alert{
    padding:6px 8px!important;
  }
}

/* =====================================================
   SUPERADMIN · KPIs rápidos + módulos agrupados
===================================================== */
.superadmin-summary-picker{
  margin-bottom:18px!important;
}
.superadmin-summary-picker__head{
  align-items:center!important;
}
.superadmin-kpi-filter{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-width:min(270px,42vw);
  margin:0!important;
}
.superadmin-kpi-filter::after{
  content:"⌄";
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  color:#fff;
  font-size:14px;
  font-weight:1000;
  pointer-events:none;
}
.superadmin-kpi-select{
  width:100%;
  min-height:42px!important;
  padding:9px 38px 9px 15px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.18)!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:1000!important;
  box-shadow:none!important;
  outline:none!important;
  appearance:none;
  -webkit-appearance:none;
  backdrop-filter:blur(8px);
}
.superadmin-kpi-select option{
  color:#24160d;
  background:#fff;
}
.superadmin-summary-picker .superadmin-kpi-panel{
  display:none;
}
.superadmin-summary-picker .superadmin-kpi-panel.is-active{
  display:grid;
}
.superadmin-summary-card{
  color:#fff;
  text-decoration:none;
  transition:transform .18s ease, background .18s ease, border-color .18s ease;
}
a.superadmin-summary-card:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.17);
  border-color:rgba(255,255,255,.22);
}
.superadmin-main-modules{
  margin-top:0!important;
}
.superadmin-dashboard-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
}
.superadmin-hub-module{
  margin-top:0!important;
}
.superadmin-hub-head{
  align-items:center!important;
}
.superadmin-hub-head .btn{
  min-height:42px!important;
}
@media(max-width:760px){
  .superadmin-summary-picker__head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
  }
  .superadmin-kpi-filter{
    width:100%;
    min-width:0;
  }
  .superadmin-kpi-select{
    min-height:40px!important;
    font-size:13px!important;
  }
  .superadmin-dashboard-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:390px){
  .superadmin-dashboard-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
