:root {
    --background:#080c12;
    --foreground:#edf5fc;
    --card:#111923;
    --card-foreground:#edf5fc;
    --popover:#111923;
    --popover-foreground:#edf5fc;
    --primary:#b5ff39;
    --primary-foreground:#0a1300;
    --secondary:#1a2633;
    --secondary-foreground:#edf5fc;
    --muted:#18212e;
    --muted-foreground:#a4b4c6;
    --accent:#223244;
    --accent-foreground:#edf5fc;
    --destructive:#ff8b8b;
    --border:#2a3645;
    --input:#2a3645;
    --ring:#b5ff39;
    --radius:.75rem
}
* {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth
}
body {
    margin:0;
    background:var(--background);
    color:var(--foreground);
    font-family:Arial,Helvetica,sans-serif;
    font-size:16px;
    line-height:1.6
}
a {
    text-decoration:none;
    color:inherit
}
button,a,input,textarea {
    touch-action:manipulation
}
a:focus-visible,button:focus-visible {
    outline:2px solid var(--primary);
    outline-offset:5px
}
.site-header {
    max-width:1440px;
    margin:auto;
    padding:26px 6%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-bottom:1px solid var(--border);
    gap:24px
}
.brand {
    display:flex;
    gap:12px;
    align-items:center;
    font-size:32px;
    font-weight:900;
    line-height:1
}
.brand svg {
    width:40px;
    height:40px;
    color:var(--primary)
}
.brand small {
    display:block;
    font-size:12px;
    letter-spacing:.18em;
    margin-top:7px;
    font-weight:500
}
nav {
    display:flex;
    gap:30px;
    align-items:center;
    font-size:14px
}
.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    border:0;
    background:var(--primary);
    color:var(--primary-foreground);
    font-weight:700;
    padding:14px 22px;
    border-radius:6px;
    cursor:pointer
}
.button:hover {
    filter:brightness(1.1)
}
.hero {
    max-width:1440px;
    margin:auto;
    padding:76px 6% 0;
    background:radial-gradient(ellipse at 85% 15%,#163b393d,transparent 60%)
}
.eyebrow {
    font-size:13px;
    font-weight:700;
    letter-spacing:.16em;
    color:var(--primary)
}
h1 {
    font-size:clamp(3rem,7.8vw,7.5rem);
    letter-spacing:-.065em;
    line-height:1.04;
    margin:30px 0 36px;
    font-weight:800
}
h1 em {
    font-style:normal;
    color:var(--primary)
}
.hero-bottom {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:32px;
    max-width:1030px
}
.hero-bottom p {
    max-width:535px;
    font-size:18px;
    color:var(--muted-foreground)
}
.service-line {
    border-top:1px solid var(--border);
    margin-top:60px;
    padding:24px 0;
    display:flex;
    gap:12px;
    align-items:center;
    font-size:14px
}
.service-line svg {
    color:var(--primary)
}
.service-line span {
    margin-left:auto;
    color:var(--muted-foreground)
}
.services {
    max-width:1440px;
    margin:auto;
    padding:65px 6% 85px
}
.section-heading {
    display:flex;
    justify-content:space-between;
    gap:40px;
    align-items:end;
    margin-bottom:32px
}
.section-heading p {
    max-width:330px;
    color:var(--muted-foreground)
}
h2 {
    font-size:clamp(1.8rem,3vw,2.6rem);
    line-height:1.15;
    letter-spacing:-.045em;
    margin:16px 0
}
h3 {
    font-size:23px;
    line-height:1.25;
    margin:26px 0 16px;
    letter-spacing:-.025em
}
.service-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px
}
.service-card {
    background:var(--card);
    padding:30px;
    border:1px solid var(--border);
    border-radius:10px
}
.card-top {
    display:flex;
    justify-content:space-between;
    color:var(--primary)
}
.card-top span {
    color:var(--muted-foreground);
    font-size:14px
}
.service-card p {
    color:var(--muted-foreground);
    min-height:80px
}
.service-card a {
    display:flex;
    align-items:center;
    gap:12px;
    font-size:14px;
    margin-top:32px
}
footer {
    border-top:1px solid var(--border);
    padding:30px 6%;
    display:flex;
    justify-content:space-between;
    color:var(--muted-foreground);
    font-size:14px
}
@media(max-width:720px) {
    .site-header {
        padding:20px 5%;
        flex-wrap:wrap
    }
    nav {
        gap:18px;
        flex-wrap:wrap;
        width:100%
    }
    nav .button {
        margin-left:auto;
        padding:10px 14px
    }
    .hero {
        padding:50px 5% 0
    }
    .hero-bottom,.section-heading {
        align-items:start;
        flex-direction:column;
        gap:16px
    }
    .hero-bottom p {
        font-size:16px
    }
    .service-line span {
        display:none
    }
    .services {
        padding:45px 5%
    }
    .service-grid {
        grid-template-columns:1fr
    }
    .service-card p {
        min-height:0
    }
    .brand {
        font-size:28px
    }
    h1 {
        font-size:clamp(2.7rem,12vw,5rem)
    }
}
@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto
    }
}
.hero-layout {
    display:grid;
    grid-template-columns:1.08fr 1fr;
    gap:50px;
    align-items:center
}
.hero-layout h1 {
    font-size:clamp(3rem,5.8vw,5.8rem);
    margin:25px 0
}
.hero-copy {
    color:var(--muted-foreground);
    max-width:550px;
    margin:0 0 30px;
    font-size:18px
}
.hero-photo {
    margin:0;
    position:relative;
    min-width:0
}
.hero-photo img {
    width:100%;
    height:470px;
    object-fit:cover;
    border-radius:var(--radius);
    border:1px solid var(--border)
}
.hero-photo figcaption {
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--muted-foreground);
    padding:12px 0
}
.filters {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-bottom:24px
}
button {
    font:inherit
}
button:disabled {
    opacity:.5;
    cursor:wait
}
.filters button,.auth-nav button {
    cursor:pointer;
    border:1px solid var(--border);
    color:var(--muted-foreground);
    background:transparent;
    border-radius:30px;
    padding:8px 16px;
    font-size:14px
}
.filters button[aria-pressed=true],.auth-nav button[aria-pressed=true] {
    background:var(--primary);
    color:var(--primary-foreground);
    border-color:var(--primary)
}
.coverage {
    display:flex;
    gap:10px;
    align-items:center;
    color:var(--muted-foreground);
    margin-top:35px
}
.service-image {
    width:100%;
    height:150px;
    object-fit:cover;
    border-radius:var(--radius);
    margin-bottom:24px
}
.page {
    max-width:1200px;
    padding:55px 6% 85px;
    margin:auto;
    min-height:65vh
}
.page h1 {
    font-size:clamp(2rem,4vw,3.7rem);
    letter-spacing:-.05em;
    line-height:1.1
}
.auth-page {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:start
}
.panel {
    background:var(--card);
    border:1px solid var(--border);
    border-radius:var(--radius);
    padding:28px
}
.field {
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-bottom:18px;
    font-size:14px;
    font-weight:600
}
input,textarea,select {
    font:inherit;
    color:var(--foreground);
    background:var(--background);
    border:1px solid var(--border);
    border-radius:6px;
    padding:12px;
    width:100%;
    min-width:0;
    font-size:16px;
    color-scheme:dark
}
textarea {
    min-height:110px;
    resize:vertical
}
input:focus,textarea:focus,select:focus {
    outline:2px solid var(--primary);
    outline-offset:2px
}
.form-error {
    color:#ffafaf;
    background:#4b20204d;
    border:1px solid #a65757;
    padding:12px;
    border-radius:6px
}
.hint,.muted {
    color:var(--muted-foreground)
}
.hint {
    font-size:14px
}
.auth-nav {
    display:flex;
    gap:10px;
    margin-bottom:30px
}
.text-button {
    display:inline-block;
    background:none;
    border:none;
    color:var(--primary);
    padding:14px 0;
    cursor:pointer;
    font-size:14px
}
.notice {
    position:fixed;
    bottom:25px;
    right:25px;
    max-width:min(460px,90vw);
    background:var(--primary);
    color:var(--primary-foreground);
    padding:20px;
    border-radius:8px;
    box-shadow:0 10px 50px #0008;
    z-index:10
}
.skip-link {
    position:absolute;
    left:12px;
    top:-100px;
    z-index:20;
    background:var(--primary);
    color:var(--primary-foreground);
    padding:10px
}
.skip-link:focus {
    top:12px
}
.narrow {
    max-width:730px
}
.service-card,.panel {
    border-radius:var(--radius)
}
@media(max-width:850px) {
    .hero-layout,.auth-page {
        grid-template-columns:1fr;
        gap:30px
    }
    .hero-photo img {
        height:300px
    }
    .hero-layout h1 {
        font-size:clamp(3rem,10vw,5rem)
    }
}
.page-heading,.row {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px
}
.page-heading {
    margin-bottom:24px
}
.page-heading h1 {
    margin-bottom:0
}
.banner {
    padding:22px 28px;
    border:1px solid var(--primary);
    background:var(--card);
    border-radius:var(--radius);
    margin:24px 0
}
.banner p {
    margin:10px 0
}
.secondary {
    background:transparent;
    color:var(--foreground);
    border:1px solid var(--border)
}
.account-grid {
    display:grid;
    grid-template-columns:380px 1fr;
    gap:32px;
    align-items:start
}
.profile-avatar {
    display:flex;
    gap:14px;
    align-items:center;
    margin:20px 0 30px;
    overflow-wrap:anywhere
}
.profile-avatar img,.profile-avatar>span {
    width:60px;
    height:60px;
    border-radius:50%;
    object-fit:cover;
    flex-shrink:0
}
.profile-avatar>span {
    display:grid;
    place-items:center;
    background:var(--primary);
    color:var(--primary-foreground);
    font-size:30px;
    font-weight:700
}
.profile-avatar p {
    margin:4px 0
}
.check {
    display:flex;
    gap:12px;
    align-items:center;
    font-size:14px;
    margin:16px 0
}
.check input {
    width:18px;
    height:18px;
    accent-color:var(--primary);
    flex-shrink:0
}
fieldset {
    border:1px solid var(--border);
    border-radius:8px;
    padding:12px 18px;
    margin:20px 0
}
legend {
    padding:0 8px;
    font-size:14px
}
.appointment {
    margin:18px 0
}
.appointment h3 {
    margin:12px 0
}
.appointment p {
    white-space:pre-wrap;
    overflow-wrap:anywhere
}
.date-display {
    text-align:right;
    color:var(--muted-foreground);
    white-space:nowrap;
    font-size:14px
}
.date-display strong {
    display:block;
    font-size:24px;
    color:var(--foreground)
}
.status {
    display:inline-block;
    padding:4px 10px;
    background:var(--background);
    border:1px solid var(--border);
    border-radius:30px;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.05em
}
.pendiente {
    color:#ffdb8b
}
.confirmada {
    color:var(--primary)
}
.completada {
    color:#8be3ff
}
.cancelada {
    color:#ffabab
}
.note {
    background:var(--background);
    border-left:2px solid var(--primary);
    padding:14px;
    margin-top:16px;
    font-size:14px
}
.note p {
    margin:5px 0
}
.empty {
    border:1px dashed var(--border);
    padding:30px;
    border-radius:var(--radius)
}
.empty h3 {
    margin-top:0
}
.booking-grid {
    display:grid;
    grid-template-columns:1.6fr 1fr;
    gap:32px;
    align-items:start;
    margin-top:35px
}
.form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px
}
.intro {
    max-width:700px
}
.booking-grid hr {
    border:0;
    border-top:1px solid var(--border);
    margin:25px 0
}
.admin-nav {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin:30px 0;
    padding-bottom:20px;
    border-bottom:1px solid var(--border)
}
.admin-nav button {
    cursor:pointer;
    border:1px solid var(--border);
    border-radius:6px;
    padding:12px 20px;
    background:var(--card);
    color:var(--foreground)
}
.admin-nav .active {
    color:var(--primary-foreground);
    background:var(--primary)
}
.short {
    max-width:300px
}
.admin-appointment {
    border-top:1px solid var(--border);
    padding-top:22px;
    margin-top:22px
}
.admin-appointment textarea {
    min-height:70px
}
.color-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px
}
.color-grid input[type=color] {
    height:50px;
    padding:5px;
    cursor:pointer
}
.admin-image {
    width:100%;
    max-width:350px;
    height:180px;
    object-fit:cover;
    border-radius:var(--radius);
    margin:20px 0
}
.editor-grid {
    display:grid;
    grid-template-columns:1fr 1.4fr;
    gap:28px;
    margin-top:25px
}
.list-item {
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:start;
    text-align:left;
    padding:18px;
    background:var(--card);
    color:var(--foreground);
    border:1px solid var(--border);
    border-radius:6px;
    margin-bottom:10px;
    cursor:pointer;
    gap:7px
}
.list-item span {
    font-size:14px;
    color:var(--muted-foreground)
}
.list-item:hover {
    border-color:var(--primary)
}
.category-row {
    display:flex;
    gap:20px;
    align-items:center
}
.category-row .list-item {
    flex:1
}
.color-grid .field {
    font-size:14px
}
details {
    border-bottom:1px solid var(--border);
    padding-bottom:20px;
    margin-bottom:25px
}
summary {
    font-size:20px;
    cursor:pointer;
    font-weight:700;
    padding:5px 0 20px
}
.compact .panel {
    padding:18px
}
.compact .appointment {
    margin:10px 0
}
.compact .page {
    padding-top:32px
}
.reduce-motion *, .reduce-motion *:before,.reduce-motion *:after {
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important
}
.service-card {
    transition:transform .2s,border-color .2s
}
.service-card:hover {
    transform:translateY(-4px);
    border-color:var(--primary)
}
.service-card img {
    transition:none
}
button:hover {
    filter:brightness(1.08)
}
[hidden] {
    display:none!important
}
@media(max-width:900px) {
    .account-grid,.booking-grid,.editor-grid {
        grid-template-columns:1fr
    }
    .account-grid {
        gap:20px
    }
    .color-grid {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:550px) {
    .form-grid {
        grid-template-columns:1fr;
        gap:0
    }
    .page-heading {
        align-items:start;
        flex-direction:column;
        gap:8px
    }
    .panel {
        padding:22px
    }
    .admin-nav button {
        padding:10px 12px
    }
    .date-display {
        font-size:12px
    }
    .hero-photo img {
        height:240px
    }
    .hero-copy {
        font-size:16px
    }
    .row {
        gap:12px
    }
    .profile-avatar {
        flex-wrap:wrap
    }
    .page {
        padding-left:5%;
        padding-right:5%
    }
    .admin-page .panel {
        padding:18px
    }
}
@media(prefers-reduced-motion:reduce) {
    *,*:before,*:after {
        animation:none!important;
        transition:none!important;
        scroll-behavior:auto!important
    }
}
/* Optional modules share the same theme variables. */
.site-header nav {
    flex-wrap:wrap;
    justify-content:flex-end;
    row-gap:12px
}
.site-header .brand {
    flex-shrink:0
}
.pre-wrap {
    white-space:pre-wrap;
    overflow-wrap:anywhere
}
.vehicle-card,.customer-card {
    margin:18px 0
}
.work-entry {
    padding:22px 0;
    border-top:1px solid var(--border)
}
.page-image {
    max-width:100%;
    max-height:460px;
    object-fit:cover;
    border-radius:var(--radius);
    margin:25px 0
}
.prose {
    max-width:850px;
    font-size:18px;
    line-height:1.8
}
.customer-card .text-button {
    display:block
}
.editor-grid form {
    min-width:0
}
.editor-grid .list-item {
    overflow-wrap:anywhere
}
.filters button {
    white-space:normal
}
.admin-nav {
    gap:8px
}
.admin-nav button {
    font-size:14px
}
.admin-page {
    max-width:1440px
}
.admin-page .editor-grid {
    grid-template-columns:minmax(220px,.85fr) minmax(0,1.4fr)
}
@media(max-width:900px) {
    .admin-page .editor-grid {
        grid-template-columns:1fr
    }
    .site-header {
        align-items:flex-start
    }
    .site-header nav {
        gap:12px;
        font-size:14px
    }
}
@media(max-width:600px) {
    .site-header nav {
        justify-content:flex-start
    }
    .site-header nav .button {
        margin-left:0
    }
    .vehicle-card .row {
        flex-wrap:wrap
    }
    .prose {
        font-size:16px
    }
}
/* Administrative monthly calendar */
.calendar-toolbar {
    display:flex;
    gap:16px;
    align-items:center;
    flex-wrap:wrap;
    margin:24px 0
}
.calendar-toolbar .field {
    margin:0
}
.calendar-scroll {
    overflow-x:auto;
    border:1px solid var(--border);
    border-radius:12px
}
.calendar-grid {
    display:grid;
    grid-template-columns:repeat(7,minmax(95px,1fr));
    min-width:665px;
    gap:1px;
    background:var(--border)
}
.calendar-weekday,.calendar-blank,.calendar-cell {
    background:var(--card);
    padding:12px
}
.calendar-weekday {
    text-align:center;
    font-weight:700
}
.calendar-cell {
    min-height:122px;
    border:0;
    color:var(--foreground);
    text-align:left;
    cursor:pointer;
    display:flex;
    flex-direction:column;
    gap:6px;
    overflow:hidden;
    font:inherit
}
.calendar-cell:hover,.calendar-cell.selected {
    outline:2px solid var(--primary);
    outline-offset:-2px
}
.calendar-cell.today>strong {
    color:var(--primary)
}
.calendar-chip {
    display:block;
    font-size:12px;
    border-left:3px solid var(--primary);
    padding-left:5px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:100%
}
.calendar-chip.cancelled {
    opacity:.55;
    text-decoration:line-through
}
.calendar-details {
    margin-top:28px
}
.calendar-card {
    margin-bottom:16px
}
.calendar-card p {
    overflow-wrap:anywhere
}
.calendar-description {
    white-space:pre-wrap
}
.calendar-cell:focus-visible {
    outline:3px solid var(--primary);
    outline-offset:-3px
}
/* Adaptación para pantallas pequeñas */
img,svg,video {
    max-width:100%;
    height:auto
}
.page,.shell,.container {
    width:min(100%,1200px);
    margin-inline:auto
}
.form-grid,.editor-grid,.cards,.grid {
    min-width:0
}
@media(max-width:900px) {
    .editor-grid,.form-grid {
        grid-template-columns:1fr!important
    }
    .row {
        flex-wrap:wrap
    }
    .page {
        padding-inline:20px
    }
    .hero {
        min-height:auto
    }
    .admin-nav {
        overflow-x:auto;
        white-space:nowrap
    }
}
@media(max-width:640px) {
    html,body {
        overflow-x:hidden
    }
    .page {
        padding-inline:14px
    }
    .panel,.card {
        max-width:100%
    }
    input,select,textarea,button {
        max-width:100%
    }
    .button {
        min-height:44px
    }
    .row {
        gap:10px
    }
    .hero h1,h1 {
        font-size:clamp(1.8rem,9vw,3rem)
    }
    .hero p,p {
        overflow-wrap:anywhere
    }
    .calendar-grid {
        overflow-x:auto
    }
    .nav,.site-nav {
        flex-wrap:wrap
    }
}


/* Slider principal */
.hero-slider { overflow:hidden; position:relative; border-radius:var(--radius); }
.hero-slider-track { display:flex; width:100%; transition:transform .75s cubic-bezier(.22,.61,.36,1); will-change:transform; }
.hero-slide { flex:0 0 100%; min-width:100%; }
.hero-slider .hero-slide img { display:block; width:100%; height:470px; object-fit:cover; border-radius:var(--radius); border:1px solid var(--border); }
.hero-arrow { position:absolute; top:calc(50% - 28px); z-index:3; width:44px; height:44px; border-radius:50%; border:1px solid color-mix(in srgb,var(--primary) 55%,transparent); background:color-mix(in srgb,var(--background) 72%,transparent); color:var(--foreground); font-size:32px; line-height:1; cursor:pointer; backdrop-filter:blur(10px); box-shadow:0 0 24px color-mix(in srgb,var(--primary) 22%,transparent); }
.hero-arrow:hover { border-color:var(--primary); transform:scale(1.06); }
.hero-prev { left:14px; } .hero-next { right:14px; }
.hero-dots { position:absolute; left:50%; bottom:46px; transform:translateX(-50%); z-index:3; display:flex; gap:8px; padding:7px 10px; border-radius:999px; background:color-mix(in srgb,var(--background) 62%,transparent); backdrop-filter:blur(8px); }
.hero-dots button { width:9px; height:9px; padding:0; border:0; border-radius:50%; background:var(--muted-foreground); opacity:.55; cursor:pointer; transition:.25s ease; }
.hero-dots button.active { width:25px; border-radius:999px; background:var(--primary); opacity:1; box-shadow:0 0 12px var(--primary); }
.slider-admin-item { display:flex; align-items:center; gap:12px; width:100%; text-align:left; }
.slider-admin-item img { width:92px; height:62px; object-fit:cover; border-radius:8px; border:1px solid var(--border); }
.slider-admin-item span { display:grid; gap:4px; } .slider-admin-item small { color:var(--muted-foreground); }
.danger { color:#ff7d7d; }
@media(max-width:700px){ .hero-slider .hero-slide img{height:320px}.hero-arrow{width:38px;height:38px;font-size:27px}.hero-dots{bottom:44px}.slider-admin-item img{width:72px;height:52px} }
@media(prefers-reduced-motion:reduce){ .hero-slider-track{transition:none}.hero-arrow{transition:none} }

/* Disponibilidad de citas */
.availability-note { margin:-4px 0 18px; padding:12px 14px; border:1px solid var(--border); border-radius:12px; background:color-mix(in srgb,var(--primary) 7%,var(--card)); color:var(--muted-foreground); }
#booking-date,#booking-time { min-height:48px; }

/* Campos de contraseña */
.password-field{position:relative}.password-field input{padding-right:3rem}.password-eye{position:absolute;right:.65rem;bottom:.55rem;width:2.2rem;height:2.2rem;border:0;border-radius:999px;background:transparent;color:inherit;cursor:pointer;font-size:1.05rem;display:grid;place-items:center}.password-eye:hover,.password-eye:focus-visible{background:color-mix(in srgb,var(--primary) 12%,transparent);outline:2px solid color-mix(in srgb,var(--primary) 45%,transparent);outline-offset:1px}

/* Panel de administración: navegación lateral compacta y expandible */
.admin-workspace {
    --admin-sidebar-width: 270px;
    --admin-sidebar-compact: 76px;
    display: grid;
    grid-template-columns: var(--admin-sidebar-width) minmax(0, 1fr);
    min-height: calc(100vh - 96px);
    width: 100%;
    transition: grid-template-columns .28s ease;
}
.admin-workspace.sidebar-collapsed { grid-template-columns: var(--admin-sidebar-compact) minmax(0, 1fr); }
.admin-sidebar {
    position: sticky;
    top: 0;
    align-self: start;
    height: 100vh;
    z-index: 30;
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 22px 14px;
    overflow: hidden;
    border-right: 1px solid var(--border);
    background: color-mix(in srgb, var(--card) 94%, transparent);
    backdrop-filter: blur(18px);
    box-shadow: 12px 0 30px rgba(0,0,0,.06);
    transition: width .28s ease, box-shadow .28s ease;
}
.admin-sidebar-head { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:42px; }
.admin-sidebar-brand { display:flex; align-items:center; gap:10px; min-width:210px; color:var(--foreground); }
.admin-sidebar-brand svg { color:var(--primary); flex:0 0 auto; }
.admin-sidebar-toggle {
    display:grid; place-items:center; width:36px; height:36px; flex:0 0 36px;
    border:1px solid var(--border); border-radius:10px; background:var(--background); color:var(--foreground); cursor:pointer;
}
.admin-sidebar-toggle svg { transition:transform .28s ease; }
.sidebar-collapsed:not(.sidebar-hover) .admin-sidebar-toggle svg { transform:rotate(180deg); }
.admin-sidebar .admin-nav { display:grid; gap:8px; margin:0; padding:0; border:0; overflow:visible; }
.admin-sidebar .admin-nav button {
    width:100%; min-height:48px; display:flex; align-items:center; gap:13px; margin:0; padding:11px 13px;
    border:1px solid transparent; border-radius:12px; background:transparent; color:var(--muted-foreground); text-align:left;
    white-space:nowrap; transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.admin-sidebar .admin-nav button:hover { color:var(--foreground); background:var(--muted); transform:translateX(2px); }
.admin-sidebar .admin-nav button.active { color:var(--primary-foreground); background:var(--primary); border-color:var(--primary); box-shadow:0 8px 22px color-mix(in srgb,var(--primary) 24%,transparent); }
.admin-menu-icon { width:24px; height:24px; display:grid; place-items:center; flex:0 0 24px; }
.admin-menu-label { opacity:1; transition:opacity .16s ease; }
.admin-sidebar-foot { margin-top:auto; border-top:1px solid var(--border); padding-top:14px; }
.admin-sidebar-foot a { display:flex; align-items:center; gap:13px; min-height:46px; padding:10px 13px; color:var(--foreground); text-decoration:none; white-space:nowrap; }
.admin-main { min-width:0; padding:34px clamp(20px,3vw,48px) 60px; transition:padding .28s ease; }
.admin-main-head { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:26px; }
.admin-main-head h1 { margin-bottom:0; }
.admin-workspace #admin-section { width:100%; max-width:none; }
.sidebar-collapsed:not(.sidebar-hover) .admin-sidebar-brand strong,
.sidebar-collapsed:not(.sidebar-hover) .admin-menu-label,
.sidebar-collapsed:not(.sidebar-hover) .admin-sidebar-foot span { opacity:0; pointer-events:none; }
.sidebar-collapsed.sidebar-hover .admin-sidebar {
    width:var(--admin-sidebar-width);
    position:fixed;
    left:0;
    top:0;
    box-shadow:18px 0 45px rgba(0,0,0,.18);
}
.sidebar-collapsed.sidebar-hover .admin-sidebar-brand strong,
.sidebar-collapsed.sidebar-hover .admin-menu-label,
.sidebar-collapsed.sidebar-hover .admin-sidebar-foot span { opacity:1; }
@media (max-width: 800px) {
    .admin-workspace,.admin-workspace.sidebar-collapsed { grid-template-columns:64px minmax(0,1fr); }
    .admin-sidebar { padding-inline:8px; }
    .admin-sidebar-toggle { display:none; }
    .admin-main { padding:24px 14px 48px; }
    .admin-sidebar-brand strong,.admin-menu-label,.admin-sidebar-foot span { opacity:0; pointer-events:none; }
    .admin-sidebar:hover { width:260px; position:fixed; left:0; top:0; box-shadow:18px 0 45px rgba(0,0,0,.2); }
    .admin-sidebar:hover .admin-sidebar-brand strong,.admin-sidebar:hover .admin-menu-label,.admin-sidebar:hover .admin-sidebar-foot span { opacity:1; pointer-events:auto; }
}


/* Perfil, dirección y calendario de disponibilidad */
.optional-address{margin:18px 0;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--card) 94%,var(--muted))}.optional-address summary{cursor:pointer;font-weight:700}.saved-address-card{padding:16px 18px;margin:6px 0 18px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));border-radius:var(--radius);background:color-mix(in srgb,var(--primary) 7%,var(--card))}.saved-address-card p{margin:.45rem 0 1rem}.booking-calendar-field{border:0;padding:0;margin:18px 0}.booking-calendar-field>legend{font-weight:700;margin-bottom:10px}.availability-calendar{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;max-height:610px;overflow:auto;padding:4px 4px 12px}.calendar-month{padding:15px;border:1px solid var(--border);border-radius:16px;background:var(--card)}.calendar-month h3{text-transform:capitalize;margin:0 0 12px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-week span{text-align:center;font-size:.72rem;color:var(--muted-foreground);font-weight:700;padding:4px 0}.calendar-day{min-height:54px;border:1px solid var(--border);border-radius:10px;background:var(--background);color:var(--foreground);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px;transition:.18s ease}.calendar-day span{font-weight:800}.calendar-day small{font-size:.62rem}.calendar-day.available{cursor:pointer;border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--background))}.calendar-day.available:hover{transform:translateY(-2px);box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 16%,transparent)}.calendar-day.selected{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.calendar-day.unavailable{opacity:.42;cursor:not-allowed;background:var(--muted)}.calendar-empty{min-height:54px}@media(max-width:640px){.availability-calendar{grid-template-columns:1fr;max-height:520px}.calendar-day{min-height:48px}.calendar-day small{font-size:.56rem}}

/* Selector compacto de fecha para el formulario de citas */
.booking-date-picker{position:relative;max-width:390px}
.booking-date-trigger{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 14px;border:1px solid var(--border);border-radius:12px;background:var(--background);color:var(--foreground);font:inherit;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.booking-date-trigger:hover,.booking-date-trigger[aria-expanded="true"]{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}
.booking-date-icon{font-size:1.35rem;color:var(--primary);line-height:1}
.booking-calendar-popup{position:absolute;z-index:80;top:calc(100% + 8px);left:0;width:min(330px,calc(100vw - 38px));display:block;max-height:none;overflow:visible;padding:13px;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:16px;background:var(--card);box-shadow:0 22px 55px rgba(0,0,0,.24)}
.booking-calendar-popup[hidden]{display:none!important}
.booking-calendar-head{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;margin-bottom:10px}
.booking-calendar-head strong{text-align:center;text-transform:capitalize;font-size:.96rem}
.booking-month-nav{width:36px;height:34px;border:1px solid var(--border);border-radius:10px;background:var(--background);color:var(--foreground);font-size:1.45rem;line-height:1;cursor:pointer}
.booking-month-nav:disabled{opacity:.28;cursor:not-allowed}
.booking-calendar-popup .calendar-week,.booking-calendar-popup .calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.booking-calendar-popup .calendar-week span{text-align:center;font-size:.65rem;color:var(--muted-foreground);font-weight:700;padding:3px 0}
.booking-calendar-popup .calendar-day{min-height:36px;aspect-ratio:1;border-radius:9px;padding:0;font-size:.82rem}
.booking-calendar-popup .calendar-day small{display:none}
.booking-calendar-popup .calendar-empty{min-height:36px}
.booking-calendar-legend{display:flex;justify-content:center;gap:14px;margin-top:10px;padding-top:9px;border-top:1px solid var(--border);font-size:.68rem;color:var(--muted-foreground)}
.booking-calendar-legend span{display:flex;align-items:center;gap:5px}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.legend-dot.available{background:var(--primary)}.legend-dot.unavailable{background:var(--muted-foreground);opacity:.42}
.booking-calendar-empty{margin:4px;padding:10px}
@media(max-width:640px){.booking-date-picker{max-width:none}.booking-calendar-popup{width:min(320px,calc(100vw - 52px));left:0}.booking-calendar-popup .calendar-day{min-height:34px}}

/* Inicio del backend y comportamiento responsive del espacio de trabajo */
.admin-workspace{height:calc(100vh - 0px);min-height:100vh;overflow:hidden;align-items:stretch}
.admin-sidebar{height:100vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;overscroll-behavior:contain}
.admin-main{height:100vh;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0}
.admin-main>*{min-width:0}.admin-main img,.admin-main video{max-width:100%;height:auto}.admin-main table{max-width:100%}
.admin-dashboard{width:100%;max-width:1500px;margin:0 auto}.dashboard-welcome{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.dashboard-welcome h2{margin:.25rem 0 .35rem}.dashboard-date{white-space:nowrap;padding:9px 13px;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--muted-foreground);font-size:.82rem;font-weight:700}
.dashboard-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.dashboard-card{appearance:none;width:100%;display:flex;align-items:center;gap:15px;padding:20px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 96%,var(--primary)),var(--card));color:var(--foreground);text-align:left;box-shadow:0 10px 30px rgba(0,0,0,.05);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.dashboard-card:is(button){cursor:pointer}.dashboard-card:is(button):hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--primary) 45%,var(--border));box-shadow:0 16px 36px color-mix(in srgb,var(--primary) 10%,rgba(0,0,0,.08))}.dashboard-card-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:15px;background:color-mix(in srgb,var(--primary) 12%,var(--background));color:var(--primary)}.dashboard-card>span:last-child{display:grid;gap:2px;min-width:0}.dashboard-card small{color:var(--muted-foreground);font-style:normal}.dashboard-card strong{font-size:1.75rem;line-height:1.1}.dashboard-card em{font-size:.72rem;color:var(--muted-foreground);font-style:normal}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px}.dashboard-panel{min-width:0;margin:0}.dashboard-list{display:grid;gap:8px;margin-top:14px}.dashboard-list-item{display:flex;align-items:center;gap:13px;padding:11px 0;border-top:1px solid var(--border)}.dashboard-list-item:first-child{border-top:0}.dashboard-list-item>div{min-width:0;display:grid;gap:2px}.dashboard-list-item strong,.dashboard-list-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-list-item small{color:var(--muted-foreground)}.dashboard-time,.dashboard-date-chip{min-width:74px;padding:7px 9px;border-radius:10px;background:color-mix(in srgb,var(--primary) 9%,var(--muted));color:var(--foreground);font-size:.76rem;font-weight:800;text-align:center}.dashboard-date-chip{min-width:50px}.dashboard-empty{margin-top:15px;padding:22px;border:1px dashed var(--border);border-radius:14px;color:var(--muted-foreground);text-align:center}.dashboard-status-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border)}.dashboard-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
@media(max-width:1150px){.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.admin-main{padding-inline:clamp(16px,2.5vw,30px)}}
@media(max-width:800px){.admin-workspace,.admin-workspace.sidebar-collapsed{grid-template-columns:58px minmax(0,1fr)}.admin-sidebar{width:58px;padding:14px 7px;transition:width .22s ease,box-shadow .22s ease}.admin-sidebar:hover{width:250px}.admin-main{padding:20px 12px 42px}.admin-main-head{margin-bottom:18px}.admin-main-head h1{font-size:clamp(1.45rem,6vw,2rem)}.dashboard-welcome{display:block}.dashboard-date{display:inline-block;margin-top:10px}.dashboard-cards{gap:10px}.dashboard-card{padding:14px;gap:10px}.dashboard-card-icon{width:40px;height:40px;flex-basis:40px}.dashboard-card strong{font-size:1.45rem}.editor-grid,.form-grid{min-width:0}}
@media(max-width:520px){.dashboard-cards{grid-template-columns:1fr}.dashboard-card{min-height:84px}.dashboard-panel{padding:16px}.dashboard-list-item{align-items:flex-start}.dashboard-actions .button{flex:1 1 calc(50% - 8px)}.admin-main{padding-right:10px}.row{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.admin-workspace,.admin-sidebar,.admin-main,.dashboard-card{transition:none!important}}

.finance-table{overflow:auto}.finance-table table{width:100%;border-collapse:collapse;min-width:680px}.finance-table th,.finance-table td{text-align:left;padding:.8rem;border-bottom:1px solid var(--border)}.finance-cards .dashboard-card{cursor:default}

/* Corrección de distribución del backend: menú y contenido siempre visibles */
@media (min-width: 801px) {
    .admin-workspace {
        position: relative;
        display: grid;
        grid-template-columns: var(--admin-sidebar-width) minmax(0, 1fr);
        width: 100%;
        max-width: 100vw;
        overflow: hidden;
        transition: grid-template-columns .26s cubic-bezier(.2,.8,.2,1);
    }
    .admin-workspace.sidebar-collapsed {
        grid-template-columns: var(--admin-sidebar-compact) minmax(0, 1fr);
    }
    .admin-workspace.sidebar-collapsed.sidebar-hover {
        grid-template-columns: var(--admin-sidebar-width) minmax(0, 1fr);
    }
    .admin-sidebar,
    .admin-workspace.sidebar-collapsed.sidebar-hover .admin-sidebar {
        position: relative;
        inset: auto;
        width: 100%;
        min-width: 0;
        max-width: none;
        height: 100vh;
        box-shadow: 8px 0 24px rgba(0,0,0,.06);
        transition: box-shadow .26s ease, padding .26s ease;
    }
    .admin-main {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
        overflow-x: hidden;
    }
    .admin-main #admin-section,
    .admin-main .panel,
    .admin-main .admin-dashboard,
    .admin-main .editor-grid,
    .admin-main .form-grid {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }
    .admin-main .row {
        min-width: 0;
        max-width: 100%;
        flex-wrap: wrap;
    }
    .admin-main input,
    .admin-main select,
    .admin-main textarea,
    .admin-main button {
        max-width: 100%;
        box-sizing: border-box;
    }
    .admin-main .table-wrap,
    .admin-main .finance-table {
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* En pantallas pequeñas el menú se superpone; el contenido nunca se elimina ni cambia de ancho. */
@media (max-width: 800px) {
    .admin-workspace,
    .admin-workspace.sidebar-collapsed,
    .admin-workspace.sidebar-collapsed.sidebar-hover {
        position: relative;
        display: grid;
        grid-template-columns: 58px minmax(0, 1fr);
        width: 100%;
        max-width: 100vw;
        overflow: hidden;
    }
    .admin-sidebar {
        position: relative;
        width: 58px;
        z-index: 50;
    }
    .admin-sidebar:hover {
        position: fixed;
        top: 0;
        left: 0;
        width: min(250px, 82vw);
        height: 100vh;
        z-index: 100;
        box-shadow: 20px 0 50px rgba(0,0,0,.25);
    }
    .admin-main {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
        overflow-x: hidden;
    }
    .admin-main #admin-section,
    .admin-main .panel,
    .admin-main .admin-dashboard,
    .admin-main .editor-grid,
    .admin-main .form-grid {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }
}

/* Selector de idioma del frontend */
.language-switcher{display:inline-flex;align-items:center;gap:.35rem;margin-left:.35rem;padding:.25rem;border:1px solid var(--border);border-radius:999px;background:var(--card)}
.language-switcher button{width:34px;height:30px;display:grid;place-items:center;padding:0;border:0;border-radius:999px;background:transparent;font-size:19px;line-height:1;cursor:pointer;opacity:.65;transition:transform .18s ease,opacity .18s ease,background .18s ease}
.language-switcher button:hover,.language-switcher button:focus-visible{opacity:1;transform:scale(1.08)}
.language-switcher button.active{opacity:1;background:color-mix(in srgb,var(--primary) 18%,transparent);outline:1px solid var(--primary)}
.site-footer{border-top:1px solid var(--border);padding:2rem clamp(1rem,4vw,4rem);background:var(--card)}
.footer-grid{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:1.3fr 1fr auto;gap:1.5rem;align-items:start}
.footer-grid p{margin:.35rem 0;color:var(--muted-foreground)}
.footer-links{display:flex;gap:1rem;flex-wrap:wrap}.footer-links a{color:var(--foreground)}
@media(max-width:900px){.site-header nav{flex-wrap:wrap}.language-switcher{order:10}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}.language-switcher button{width:32px;height:28px}}

/* Selector compacto para editar traducciones en administración */
.translation-language-picker { display:flex; align-items:end; gap:16px; flex-wrap:wrap; margin:14px 0 18px; padding:14px; border:1px solid var(--border); border-radius:calc(var(--radius) * 1px); background:color-mix(in srgb, var(--card) 92%, var(--primary) 8%); }
.translation-language-picker .field { margin:0; min-width:220px; }
.translation-language-picker .hint { margin:0 0 8px; flex:1 1 280px; }
[data-translation-panel][hidden] { display:none !important; }
[data-translation-panel] { animation:translationPanelIn .16s ease-out; }
@keyframes translationPanelIn { from { opacity:0; transform:translateY(3px); } to { opacity:1; transform:none; } }
@media (max-width:640px){ .translation-language-picker { align-items:stretch; } .translation-language-picker .field { min-width:0; width:100%; } }

/* Selector visible de idioma del frontend */
.language-switcher{display:inline-flex!important;align-items:center;gap:6px;margin-left:8px;padding:5px 7px;border:1px solid color-mix(in srgb,var(--border) 75%,#fff 25%);border-radius:12px;background:#2a3645!important;box-shadow:0 4px 16px rgba(0,0,0,.12);isolation:isolate}
.language-switcher button{width:43px!important;height:34px!important;display:flex!important;align-items:center;justify-content:center;gap:4px;padding:3px!important;border:1px solid #d8dce3!important;border-radius:8px!important;background:#f8f9fb!important;color:#222!important;opacity:1!important;cursor:pointer;overflow:hidden;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.language-switcher button svg{display:block;width:27px;height:18px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12);flex:none}
.language-switcher button span{font-size:9px;font-weight:800;line-height:1;color:#30343b}
.language-switcher button:hover,.language-switcher button:focus-visible{transform:translateY(-1px);border-color:var(--primary)!important;box-shadow:0 3px 9px rgba(0,0,0,.12)}
.language-switcher button.active{border:2px solid var(--primary)!important;background:#fff!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}
@media(max-width:600px){.language-switcher{width:auto;max-width:100%;margin-left:0}.language-switcher button{width:42px!important;height:33px!important}}

/* Textos y apariencia: menú visual por tarjetas */
.content-admin-panel{overflow:visible}
.content-option-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:16px;margin:18px 0 22px}
.content-option-card{min-height:150px;aspect-ratio:1.12/1;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 96%,#fff 4%),color-mix(in srgb,var(--card) 88%,var(--primary) 12%));color:var(--foreground);padding:18px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;text-align:left;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.07);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.content-option-card:hover,.content-option-card:focus-visible{transform:translateY(-3px);border-color:var(--primary);box-shadow:0 14px 34px rgba(0,0,0,.12)}
.content-option-card.active{border:2px solid var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent),0 14px 34px rgba(0,0,0,.11)}
.content-option-card strong{font-size:1rem;color:var(--foreground)}.content-option-card small{color:color-mix(in srgb,var(--foreground) 82%,#fff 18%);font-weight:600;line-height:1.4;opacity:1}
.content-option-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--primary) 15%,var(--card));color:var(--primary)}
.content-option-flags{display:flex;gap:5px;align-items:center;height:50px}.content-option-flags svg{width:38px;height:25px;border-radius:4px;box-shadow:0 0 0 1px rgba(0,0,0,.14),0 3px 8px rgba(0,0,0,.10)}
.content-option-panel{border-top:1px solid var(--border);padding-top:20px;animation:contentPanelIn .18s ease}
.content-option-panel[hidden]{display:none!important}.content-panel-heading{margin-bottom:16px}.content-panel-heading h3{margin-bottom:4px}
.content-save-bar{position:sticky;bottom:10px;z-index:5;margin-top:20px;padding:12px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--card) 94%,transparent);backdrop-filter:blur(10px);display:flex;justify-content:flex-end}
@keyframes contentPanelIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* Selector visual de idioma con banderas reales */
.translation-language-picker{display:block}
.translation-picker-title{font-weight:800;margin-bottom:10px}
.translation-language-buttons{display:flex;gap:12px;flex-wrap:wrap}
.translation-lang-button{min-width:180px;display:flex;align-items:center;gap:12px;padding:11px 14px;border:1px solid var(--border);border-radius:14px;background:var(--card);color:var(--foreground);cursor:pointer;text-align:left;transition:.16s ease}
.translation-lang-button svg{width:42px;height:28px;flex:none;border-radius:4px;box-shadow:0 0 0 1px rgba(0,0,0,.16),0 3px 8px rgba(0,0,0,.1)}
.translation-lang-button span{display:flex;flex-direction:column}.translation-lang-button small{color:var(--muted)}
.translation-lang-button:hover,.translation-lang-button.active{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 14%,transparent);transform:translateY(-1px)}
.translation-hidden-select{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.translation-panel-heading{display:flex;align-items:center;gap:12px;margin:16px 0}.translation-panel-heading svg{width:45px;height:30px;border-radius:4px;box-shadow:0 0 0 1px rgba(0,0,0,.15)}.translation-panel-heading h3,.translation-panel-heading p{margin:0}.translation-panel-heading p{color:var(--muted)}
@media(max-width:1000px){.content-option-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.content-option-card{aspect-ratio:auto;min-height:130px}}
@media(max-width:560px){.content-option-grid{grid-template-columns:1fr 1fr;gap:10px}.content-option-card{min-height:120px;padding:13px;border-radius:14px}.content-option-card small{display:none}.translation-lang-button{min-width:0;flex:1 1 140px}.content-save-bar{bottom:6px}}

/* Apariencia SMD del backend: azul oscuro y acentos neón */
.admin-workspace{
 --admin-bg:#071522;--admin-surface:#0b1d2d;--admin-surface-2:#10263a;--admin-line:#183c59;
 --admin-text:#f5f9ff;--admin-muted:#9db4c9;--admin-blue:#1597ff;--admin-cyan:#17d9ff;
 background:radial-gradient(circle at 75% 8%,rgba(54,39,130,.18),transparent 28%),linear-gradient(135deg,#06111d,#081827 52%,#07131f);
 color:var(--admin-text);
}
.admin-workspace .admin-sidebar{background:linear-gradient(180deg,#091a2a 0%,#071522 100%);border-right-color:#17364e;box-shadow:10px 0 34px rgba(0,0,0,.22);backdrop-filter:none}
.admin-workspace .admin-sidebar-brand,.admin-workspace .admin-sidebar-foot a{color:#eef7ff}
.admin-workspace .admin-sidebar-brand svg{color:var(--admin-cyan)}
.admin-workspace .admin-sidebar-toggle{background:#0c2235;border-color:#1b4968;color:#ccecff}
.admin-workspace .admin-nav button{color:#b8cce0;border-radius:12px}
.admin-workspace .admin-nav button:hover{color:#fff;background:#0d2b43;border-color:#174b70;transform:translateX(2px)}
.admin-workspace .admin-nav button.active{color:#fff;background:linear-gradient(135deg,#075a9f,#087cc8);border-color:#1597ff;box-shadow:0 8px 24px rgba(0,127,220,.25)}
.admin-workspace .admin-main{background:transparent;color:var(--admin-text)}
.admin-workspace .admin-main .muted,.admin-workspace .admin-main .hint{color:var(--admin-muted)}
.admin-neon-head{position:relative;min-height:190px;margin:-34px calc(clamp(20px,3vw,48px)*-1) 28px;padding:22px clamp(20px,3vw,48px);overflow:hidden;border-bottom:1px solid #183b57;background:linear-gradient(180deg,rgba(5,15,26,.96),rgba(7,21,34,.84));align-items:flex-start}
.admin-neon-title{position:relative;z-index:2;display:grid;gap:3px;padding-top:3px;text-shadow:0 2px 16px #06111d}
.admin-neon-title .eyebrow{color:#6fdcff;letter-spacing:.12em}
.admin-neon-title strong{font-size:clamp(1.35rem,2.2vw,2rem);color:#fff}
.admin-neon-title small{font-size:.95rem;color:#a9bfd2}
.admin-pcb-banner{position:absolute;z-index:1;left:7%;right:0;top:2px;width:93%;height:188px;object-fit:contain;object-position:center right;pointer-events:none;filter:saturate(1.18) brightness(1.08) drop-shadow(0 0 16px rgba(26,174,255,.24))}
.admin-workspace .panel,.admin-workspace .dashboard-card,.admin-workspace .staff-card,.admin-workspace .content-admin-panel{background:linear-gradient(145deg,rgba(12,31,48,.96),rgba(8,24,38,.98));border-color:#1b4563;color:#f4f8fd;box-shadow:0 12px 34px rgba(0,0,0,.18)}
.admin-workspace .content-admin-panel{background:transparent;border:0;box-shadow:none;padding:0}
.admin-workspace .content-option-grid{gap:16px}
.admin-workspace .content-option-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#0c2235,#0a1928);border:1px solid #1769a5;color:#fff;box-shadow:inset 0 0 34px rgba(0,132,255,.04),0 10px 26px rgba(0,0,0,.18)}
.admin-workspace .content-option-card:nth-child(8n+1){--tile:#169cff}.admin-workspace .content-option-card:nth-child(8n+2){--tile:#9b4dff}.admin-workspace .content-option-card:nth-child(8n+3){--tile:#18d889}.admin-workspace .content-option-card:nth-child(8n+4){--tile:#ff9d2e}.admin-workspace .content-option-card:nth-child(8n+5){--tile:#ff3f9d}.admin-workspace .content-option-card:nth-child(8n+6){--tile:#16d9f4}.admin-workspace .content-option-card:nth-child(8n+7){--tile:#f2cf22}.admin-workspace .content-option-card:nth-child(8n+8){--tile:#ff5364}
.admin-workspace .content-option-card{border-color:color-mix(in srgb,var(--tile) 82%,#17364e);background:radial-gradient(circle at 50% 18%,color-mix(in srgb,var(--tile) 18%,transparent),transparent 42%),linear-gradient(145deg,#0c2235,#0a1928)}
.admin-workspace .content-option-card:hover,.admin-workspace .content-option-card:focus-visible,.admin-workspace .content-option-card.active{border-color:var(--tile);box-shadow:0 0 0 1px color-mix(in srgb,var(--tile) 48%,transparent),0 16px 38px color-mix(in srgb,var(--tile) 18%,rgba(0,0,0,.35));transform:translateY(-3px)}
.admin-workspace .content-option-icon{background:color-mix(in srgb,var(--tile) 18%,#0a1928);color:var(--tile);box-shadow:0 0 22px color-mix(in srgb,var(--tile) 22%,transparent)}
.admin-workspace .content-option-card strong{color:#fff}.admin-workspace .content-option-card small{color:#c1d2e1;font-weight:500}
.admin-workspace .content-option-panel{border-top-color:#1a4666;background:#0a1b2a;border:1px solid #1a4666;border-radius:18px;padding:20px;margin-top:18px}
.admin-workspace .field,.admin-workspace label{color:#dceafa}.admin-workspace input,.admin-workspace textarea,.admin-workspace select{background:#071725!important;color:#f4f9ff!important;border-color:#24506e!important}.admin-workspace input:focus,.admin-workspace textarea:focus,.admin-workspace select:focus{border-color:#169cff!important;box-shadow:0 0 0 3px rgba(22,156,255,.13)!important}
.admin-workspace .button{background:linear-gradient(135deg,#0879ca,#139cff);border-color:#2aabff;color:#fff}.admin-workspace .button.secondary{background:#0d2a40;border-color:#235574;color:#dcecff}
.admin-workspace .translation-lang-button{background:#0b2031;border-color:#23506d;color:#fff}.admin-workspace .translation-lang-button small{color:#9eb6ca}.admin-workspace .translation-lang-button.active{border-color:#19baff;box-shadow:0 0 0 2px rgba(25,186,255,.13)}
.admin-workspace .content-save-bar{background:rgba(7,23,37,.92);border-color:#1d4865}
@media(max-width:800px){.admin-neon-head{min-height:150px;margin:-20px -12px 20px;padding:18px 14px}.admin-pcb-banner{left:20%;width:100%;height:150px;opacity:.72}.admin-neon-title small{max-width:220px}.admin-workspace .content-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.admin-neon-head{min-height:135px}.admin-pcb-banner{left:28%;width:110%;height:135px;opacity:.58}.admin-neon-title strong{font-size:1.25rem}.admin-neon-title small{font-size:.8rem}.admin-workspace .content-option-grid{grid-template-columns:1fr}}


/* Backend neon: contraste integral del panel derecho */
.admin-workspace .admin-main,
.admin-workspace .admin-main #admin-section{background:#071522!important;color:#f5f9ff!important;min-width:0}
.admin-workspace .admin-main #admin-section{padding-bottom:40px}
.admin-workspace .admin-main h1,.admin-workspace .admin-main h2,.admin-workspace .admin-main h3,.admin-workspace .admin-main h4,.admin-workspace .admin-main strong{color:#f8fbff}
.admin-workspace .admin-main p,.admin-workspace .admin-main small,.admin-workspace .admin-main .muted,.admin-workspace .admin-main .hint{color:#a9bfd2}
.admin-workspace .admin-main table{background:#0a1c2b;color:#eaf5ff;border-color:#1b4563}
.admin-workspace .admin-main th{background:#0e2940!important;color:#dff3ff!important;border-color:#24506e!important}
.admin-workspace .admin-main td{background:#0a1c2b!important;color:#e7f1fb!important;border-color:#183c59!important}
.admin-workspace .admin-main tr:hover td{background:#0d2539!important}
.admin-workspace .admin-main .panel,.admin-workspace .admin-main .card,.admin-workspace .admin-main .dashboard-card,.admin-workspace .admin-main .staff-card,.admin-workspace .admin-main form{color:#eef7ff}
.admin-workspace .admin-main .panel{background:linear-gradient(145deg,#0c2032,#091927)!important;border-color:#1b4563!important}
.admin-workspace .admin-main input::placeholder,.admin-workspace .admin-main textarea::placeholder{color:#7893aa!important}
.admin-workspace .admin-main a{color:#63cfff}
.admin-workspace .admin-main hr{border-color:#1b4563}
.admin-workspace .admin-main .badge,.admin-workspace .admin-main .status{border-color:#24506e}
.admin-neon-head{background:linear-gradient(180deg,#06121f 0%,#081a2a 100%)!important}
/* Circuito superior del backend: se mantiene como textura de fondo para dar prioridad al título. */
.admin-pcb-banner{display:block!important;visibility:visible!important;opacity:.34!important;filter:brightness(.68) saturate(.82) drop-shadow(0 0 10px rgba(26,174,255,.08))}
@media(max-width:800px){.admin-pcb-banner{opacity:.24!important}}
@media(max-width:520px){.admin-pcb-banner{opacity:.20!important}}


/* Apariencia neón editable del frontend */
:root{--accent-violet:#9b4dff;--accent-green:#18d889;--accent-orange:#ff9d2e;--accent-pink:#ff3f9d;--accent-cyan:#16d9f4;--accent-yellow:#f2cf22;--accent-red:#ff5364}
body:not(:has(.admin-workspace)){background:radial-gradient(circle at 72% 5%,color-mix(in srgb,var(--accent-violet) 12%,transparent),transparent 28%),linear-gradient(135deg,color-mix(in srgb,var(--background) 96%,#071522),var(--background));color:var(--foreground)}
body:not(:has(.admin-workspace)) .site-header{background:color-mix(in srgb,var(--background) 90%,transparent);border-bottom-color:color-mix(in srgb,var(--primary) 30%,var(--border));backdrop-filter:blur(16px);box-shadow:0 10px 30px rgba(0,0,0,.16)}
body:not(:has(.admin-workspace)) .hero-text-panel,body:not(:has(.admin-workspace)) .panel,body:not(:has(.admin-workspace)) .service-card,body:not(:has(.admin-workspace)) .account-card,body:not(:has(.admin-workspace)) form{background:linear-gradient(145deg,color-mix(in srgb,var(--card) 96%,var(--primary) 4%),color-mix(in srgb,var(--card) 98%,#071522));border-color:color-mix(in srgb,var(--primary) 34%,var(--border));box-shadow:0 14px 36px rgba(0,0,0,.14)}
body:not(:has(.admin-workspace)) .service-card:nth-child(7n+1){--front-accent:var(--primary)}body:not(:has(.admin-workspace)) .service-card:nth-child(7n+2){--front-accent:var(--accent-violet)}body:not(:has(.admin-workspace)) .service-card:nth-child(7n+3){--front-accent:var(--accent-green)}body:not(:has(.admin-workspace)) .service-card:nth-child(7n+4){--front-accent:var(--accent-orange)}body:not(:has(.admin-workspace)) .service-card:nth-child(7n+5){--front-accent:var(--accent-pink)}body:not(:has(.admin-workspace)) .service-card:nth-child(7n+6){--front-accent:var(--accent-cyan)}body:not(:has(.admin-workspace)) .service-card:nth-child(7n+7){--front-accent:var(--accent-yellow)}
body:not(:has(.admin-workspace)) .service-card{border-color:color-mix(in srgb,var(--front-accent,var(--primary)) 62%,var(--border));background:radial-gradient(circle at 78% 10%,color-mix(in srgb,var(--front-accent,var(--primary)) 13%,transparent),transparent 38%),linear-gradient(145deg,var(--card),color-mix(in srgb,var(--card) 94%,var(--background)));transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
body:not(:has(.admin-workspace)) .service-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px color-mix(in srgb,var(--front-accent,var(--primary)) 16%,rgba(0,0,0,.28))}
body:not(:has(.admin-workspace)) .service-card .card-top svg,body:not(:has(.admin-workspace)) .service-card>a{color:var(--front-accent,var(--primary))}
body:not(:has(.admin-workspace)) input,body:not(:has(.admin-workspace)) select,body:not(:has(.admin-workspace)) textarea{background:color-mix(in srgb,var(--background) 88%,var(--card));color:var(--foreground);border-color:var(--border)}
body:not(:has(.admin-workspace)) input:focus,body:not(:has(.admin-workspace)) select:focus,body:not(:has(.admin-workspace)) textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}
body:not(:has(.admin-workspace)) .button{box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 18%,transparent)}
body:not(:has(.admin-workspace)) .site-footer{background:linear-gradient(180deg,var(--card),color-mix(in srgb,var(--background) 96%,#06111d));border-top-color:color-mix(in srgb,var(--primary) 35%,var(--border))}

/* Inicio del backend con la misma paleta multicolor de Textos y apariencia */
.admin-workspace .dashboard-card:nth-child(7n+1){--dash:#1597ff}.admin-workspace .dashboard-card:nth-child(7n+2){--dash:#9b4dff}.admin-workspace .dashboard-card:nth-child(7n+3){--dash:#18d889}.admin-workspace .dashboard-card:nth-child(7n+4){--dash:#ff9d2e}.admin-workspace .dashboard-card:nth-child(7n+5){--dash:#ff3f9d}.admin-workspace .dashboard-card:nth-child(7n+6){--dash:#16d9f4}.admin-workspace .dashboard-card:nth-child(7n+7){--dash:#f2cf22}
.admin-workspace .dashboard-card{border-color:color-mix(in srgb,var(--dash,#1597ff) 72%,#17364e)!important;background:radial-gradient(circle at 18% 20%,color-mix(in srgb,var(--dash,#1597ff) 17%,transparent),transparent 42%),linear-gradient(145deg,#0c2235,#091927)!important}
.admin-workspace .dashboard-card-icon{color:var(--dash,#1597ff)!important;background:color-mix(in srgb,var(--dash,#1597ff) 16%,#081827)!important;box-shadow:0 0 22px color-mix(in srgb,var(--dash,#1597ff) 18%,transparent)}
.admin-workspace .dashboard-card:hover{border-color:var(--dash,#1597ff)!important;box-shadow:0 16px 38px color-mix(in srgb,var(--dash,#1597ff) 18%,rgba(0,0,0,.35))!important}

/* Colores configurables del backend */
:root{--admin-bg:#071522;--admin-sidebar-bg:#091a2a;--admin-surface:#0b1d2d;--admin-surface-2:#10263a;--admin-text:#f5f9ff;--admin-muted:#a9bfd2;--admin-line:#1b4563;--admin-blue:#1597ff;--admin-cyan:#17d9ff;--admin-violet:#9b4dff;--admin-green:#18d889;--admin-orange:#ff9d2e;--admin-pink:#ff3f9d;--admin-yellow:#f2cf22;--admin-red:#ff5364}
.admin-workspace{background:radial-gradient(circle at 75% 8%,color-mix(in srgb,var(--admin-violet) 16%,transparent),transparent 28%),linear-gradient(135deg,color-mix(in srgb,var(--admin-bg) 94%,#000),var(--admin-bg) 52%,color-mix(in srgb,var(--admin-bg) 96%,#fff))!important;color:var(--admin-text)!important}
.admin-workspace .admin-sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--admin-sidebar-bg) 96%,#fff),var(--admin-sidebar-bg))!important;border-right-color:var(--admin-line)!important}
.admin-workspace .admin-sidebar-brand,.admin-workspace .admin-sidebar-foot a{color:var(--admin-text)!important}.admin-workspace .admin-sidebar-brand svg{color:var(--admin-cyan)!important}
.admin-workspace .admin-nav button{color:var(--admin-muted)!important}.admin-workspace .admin-nav button:hover{color:var(--admin-text)!important;background:color-mix(in srgb,var(--admin-surface-2) 84%,var(--admin-blue))!important;border-color:color-mix(in srgb,var(--admin-line) 65%,var(--admin-blue))!important}.admin-workspace .admin-nav button.active{color:#fff!important;background:linear-gradient(135deg,color-mix(in srgb,var(--admin-blue) 72%,#002e59),var(--admin-blue))!important;border-color:var(--admin-blue)!important}
.admin-workspace .admin-main,.admin-workspace .admin-main #admin-section{background:var(--admin-bg)!important;color:var(--admin-text)!important}.admin-workspace .admin-main h1,.admin-workspace .admin-main h2,.admin-workspace .admin-main h3,.admin-workspace .admin-main h4,.admin-workspace .admin-main strong{color:var(--admin-text)!important}.admin-workspace .admin-main p,.admin-workspace .admin-main small,.admin-workspace .admin-main .muted,.admin-workspace .admin-main .hint{color:var(--admin-muted)!important}
.admin-workspace .panel,.admin-workspace .dashboard-card,.admin-workspace .staff-card,.admin-workspace .content-option-panel{background:linear-gradient(145deg,var(--admin-surface-2),var(--admin-surface))!important;border-color:var(--admin-line)!important;color:var(--admin-text)!important}.admin-workspace .content-admin-panel{background:transparent!important;border:0!important}
.admin-workspace input,.admin-workspace textarea,.admin-workspace select{background:color-mix(in srgb,var(--admin-bg) 82%,var(--admin-surface))!important;color:var(--admin-text)!important;border-color:var(--admin-line)!important}.admin-workspace input:focus,.admin-workspace textarea:focus,.admin-workspace select:focus{border-color:var(--admin-blue)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--admin-blue) 15%,transparent)!important}
.admin-workspace .button{background:linear-gradient(135deg,color-mix(in srgb,var(--admin-blue) 78%,#00487b),var(--admin-blue))!important;border-color:color-mix(in srgb,var(--admin-blue) 72%,#fff)!important;color:#fff!important}.admin-workspace .button.secondary{background:var(--admin-surface-2)!important;border-color:var(--admin-line)!important;color:var(--admin-text)!important}
.admin-workspace .content-option-card:nth-child(8n+1){--tile:var(--admin-blue)}.admin-workspace .content-option-card:nth-child(8n+2){--tile:var(--admin-violet)}.admin-workspace .content-option-card:nth-child(8n+3){--tile:var(--admin-green)}.admin-workspace .content-option-card:nth-child(8n+4){--tile:var(--admin-orange)}.admin-workspace .content-option-card:nth-child(8n+5){--tile:var(--admin-pink)}.admin-workspace .content-option-card:nth-child(8n+6){--tile:var(--admin-cyan)}.admin-workspace .content-option-card:nth-child(8n+7){--tile:var(--admin-yellow)}.admin-workspace .content-option-card:nth-child(8n+8){--tile:var(--admin-red)}
.admin-workspace .admin-main table,.admin-workspace .admin-main td{background:var(--admin-surface)!important;color:var(--admin-text)!important;border-color:var(--admin-line)!important}.admin-workspace .admin-main th{background:var(--admin-surface-2)!important;color:var(--admin-text)!important;border-color:var(--admin-line)!important}.admin-neon-head{background:linear-gradient(180deg,color-mix(in srgb,var(--admin-bg) 92%,#000),var(--admin-bg))!important;border-bottom-color:var(--admin-line)!important}
.theme-divider{height:1px;background:var(--admin-line);margin:24px 0}.content-option-panel .color-grid+h4{margin-top:22px}


/* Textos y apariencia: formularios en ventana modal */
.content-modal-body-open{overflow:hidden!important}
.content-modal-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(1,8,15,.78);backdrop-filter:blur(5px)}
.content-modal-backdrop[hidden]{display:none!important}
.admin-workspace .content-modal-panel{position:fixed!important;z-index:1001;left:50%;top:50%;transform:translate(-50%,-50%);width:min(920px,calc(100vw - 36px));max-height:calc(100vh - 48px);overflow:auto;margin:0!important;padding:28px 26px 96px!important;border:1px solid color-mix(in srgb,var(--admin-blue) 55%,var(--admin-line))!important;border-radius:20px!important;background:linear-gradient(145deg,var(--admin-surface-2),var(--admin-surface))!important;box-shadow:0 28px 90px rgba(0,0,0,.58),0 0 0 1px color-mix(in srgb,var(--admin-blue) 12%,transparent)!important;animation:contentModalIn .16s ease!important}
.admin-workspace .content-modal-panel[hidden]{display:none!important}
.content-modal-close{position:sticky;float:right;top:0;z-index:3;width:42px;height:42px;margin:-8px -6px 4px 16px;border:1px solid var(--admin-line);border-radius:12px;background:var(--admin-surface-2);color:var(--admin-text);font-size:30px;line-height:34px;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.22)}
.content-modal-close:hover,.content-modal-close:focus-visible{border-color:var(--admin-cyan);color:var(--admin-cyan);outline:none}
.content-modal-open .content-save-bar{position:fixed!important;z-index:1003;left:50%;bottom:24px;transform:translateX(-50%);width:min(868px,calc(100vw - 88px));margin:0!important;background:color-mix(in srgb,var(--admin-bg) 92%,transparent)!important;box-shadow:0 -10px 28px rgba(0,0,0,.28)}
.content-admin-panel:not(.content-modal-open)>.content-save-bar{display:none!important}
@keyframes contentModalIn{from{opacity:0;transform:translate(-50%,-48%) scale(.985)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media(max-width:600px){.admin-workspace .content-modal-panel{width:calc(100vw - 18px);max-height:calc(100vh - 18px);padding:22px 16px 88px!important;border-radius:16px!important}.content-modal-open .content-save-bar{bottom:10px;width:calc(100vw - 42px);padding:9px}.content-modal-close{width:38px;height:38px;font-size:27px}}

/* Calendario administrativo: consulta y edición en modal */
.calendar-modal-body-open{overflow:hidden!important}
.calendar-modal[hidden]{display:none!important}
.calendar-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:22px}
.calendar-modal-backdrop{position:absolute;inset:0;background:rgba(1,8,15,.80);backdrop-filter:blur(6px)}
.calendar-modal-dialog{position:relative;z-index:1;width:min(900px,calc(100vw - 36px));max-height:calc(100vh - 44px);overflow:auto;padding:28px;border:1px solid color-mix(in srgb,var(--admin-blue) 55%,var(--admin-line));border-radius:20px;background:linear-gradient(145deg,var(--admin-surface-2),var(--admin-surface));box-shadow:0 28px 90px rgba(0,0,0,.62),0 0 32px color-mix(in srgb,var(--admin-cyan) 10%,transparent);animation:calendarModalIn .16s ease}
.calendar-modal-x{position:sticky;float:right;top:0;z-index:4;width:42px;height:42px;margin:-8px -8px 6px 16px;border:1px solid var(--admin-line);border-radius:12px;background:var(--admin-surface-2);color:var(--admin-text);font-size:30px;line-height:34px;cursor:pointer}
.calendar-modal-x:hover,.calendar-modal-x:focus-visible{border-color:var(--admin-cyan);color:var(--admin-cyan);outline:none}
.calendar-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-right:50px;margin-bottom:22px}
.calendar-modal-heading h3{margin:.2rem 0 0;font-size:clamp(1.35rem,2.4vw,2rem)}
.calendar-modal-events{display:grid;gap:16px;clear:both}
.calendar-modal-events .calendar-card{margin:0}
.calendar-edit-button{margin-top:10px}
.calendar-empty{padding:30px 20px;text-align:center;border:1px dashed var(--admin-line);border-radius:16px;background:color-mix(in srgb,var(--admin-surface-2) 76%,transparent)}
.calendar-form-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}
@keyframes calendarModalIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:600px){.calendar-modal{padding:9px}.calendar-modal-dialog{width:calc(100vw - 18px);max-height:calc(100vh - 18px);padding:20px 16px;border-radius:16px}.calendar-modal-heading{padding-right:38px;flex-direction:column}.calendar-modal-heading .button{width:100%}}

/* Formularios crear/editar del backend: modal sin alterar la navegación lateral. */
.admin-modal-open{overflow:hidden}
.admin-editor-modal{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(1,7,16,.78);backdrop-filter:blur(5px)}
.admin-editor-modal__dialog{width:min(920px,96vw);max-height:92vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid color-mix(in srgb,var(--primary) 48%,transparent);border-radius:20px;background:color-mix(in srgb,var(--background) 94%,#071a2d 6%);box-shadow:0 24px 80px rgba(0,0,0,.58),0 0 32px color-mix(in srgb,var(--primary) 18%,transparent)}
.admin-editor-modal__head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid color-mix(in srgb,var(--primary) 24%,transparent);background:rgba(5,18,34,.88)}
.admin-editor-modal__head h3{margin:0}.admin-editor-modal__close{width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:var(--text);font-size:30px;line-height:1;cursor:pointer}
.admin-editor-modal__close:hover{border-color:var(--primary);color:var(--primary)}
.admin-editor-modal__body{overflow:auto;padding:22px}.admin-editor-modal__body form{margin:0}.admin-editor-modal__body .form-grid{align-items:start}
@media(max-width:700px){.admin-editor-modal{padding:10px;align-items:flex-end}.admin-editor-modal__dialog{width:100%;max-height:94vh;border-radius:18px 18px 8px 8px}.admin-editor-modal__body{padding:16px}}


/* Modal global para mensajes, advertencias y errores */
.system-message-open{overflow:hidden!important}
.system-message-layer{position:fixed;inset:0;z-index:40000;display:grid;place-items:center;padding:20px;background:rgba(1,7,14,.78);backdrop-filter:blur(7px)}
.system-message-layer[hidden]{display:none!important}
.system-message-card{position:relative;width:min(520px,calc(100vw - 32px));padding:30px 30px 24px;border:1px solid var(--admin-line,var(--border));border-radius:22px;background:linear-gradient(145deg,var(--admin-surface-2,#10263a),var(--admin-surface,#0b1d2d));color:var(--admin-text,var(--foreground));box-shadow:0 30px 100px rgba(0,0,0,.62),0 0 38px color-mix(in srgb,var(--admin-blue,#1597ff) 18%,transparent);animation:systemMessageIn .18s ease-out}
.system-message-close{position:absolute;right:14px;top:12px;width:40px;height:40px;border:1px solid var(--admin-line,var(--border));border-radius:12px;background:rgba(255,255,255,.035);color:inherit;font-size:28px;line-height:32px;cursor:pointer}
.system-message-icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 18px;border-radius:18px;border:1px solid currentColor;font-size:32px;font-weight:900;box-shadow:0 0 28px currentColor}
.system-message-copy{text-align:center}.system-message-copy h3{margin:0 0 10px;font-size:22px}.system-message-text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--admin-muted,var(--muted-foreground));line-height:1.55}
.system-message-ok{display:block!important;min-width:140px;margin:24px auto 0!important}
.system-message-layer[data-type="success"] .system-message-icon{color:var(--admin-green,#18d889)}
.system-message-layer[data-type="error"] .system-message-icon{color:var(--admin-red,#ff5364)}
.system-message-layer[data-type="warning"] .system-message-icon{color:var(--admin-yellow,#f2cf22)}
.system-message-layer[data-type="info"] .system-message-icon{color:var(--admin-cyan,#17d9ff)}
@keyframes systemMessageIn{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}

/* Portada: el panel de texto mantiene exactamente la misma altura visual que el slide.
   El contenido interior se adapta sin modificar el tamaño del contenedor. */
body:not(:has(.admin-workspace)) .hero-layout{align-items:start}
body:not(:has(.admin-workspace)) .hero-text-panel{
    height:470px;
    min-height:470px;
    max-height:470px;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    overflow:hidden;
    padding:clamp(24px,3.2vw,48px);
    border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));
    border-radius:var(--radius);
}
body:not(:has(.admin-workspace)) .hero-text-panel h1{
    font-size:clamp(2.15rem,4.35vw,4.8rem);
    line-height:1.01;
    margin:clamp(14px,2vh,24px) 0;
    overflow-wrap:anywhere;
}
body:not(:has(.admin-workspace)) .hero-text-panel .hero-copy{
    font-size:clamp(14px,1.25vw,18px);
    line-height:1.5;
    margin-bottom:clamp(16px,2vh,28px);
    overflow-wrap:anywhere;
}
@media(max-width:700px){
    body:not(:has(.admin-workspace)) .hero-text-panel{
        height:320px;
        min-height:320px;
        max-height:320px;
        padding:22px;
    }
    body:not(:has(.admin-workspace)) .hero-text-panel h1{font-size:clamp(2rem,10vw,3.4rem);margin:12px 0}
    body:not(:has(.admin-workspace)) .hero-text-panel .hero-copy{font-size:14px;line-height:1.4;margin-bottom:16px}
}

/* Mi cuenta: ficha del cliente y edición mediante modales */
.account-dashboard{grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:32px;align-items:start}
.account-client-card{position:sticky;top:96px;padding:26px;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 94%,var(--primary) 6%),color-mix(in srgb,var(--card) 98%,#071522));border:1px solid color-mix(in srgb,var(--primary) 38%,var(--border));box-shadow:0 18px 48px rgba(0,0,0,.18),0 0 26px color-mix(in srgb,var(--primary) 8%,transparent)}
.account-client-head{display:flex;gap:16px;align-items:center;padding-bottom:22px;border-bottom:1px solid var(--border)}
.account-client-head h2{margin:4px 0 10px;font-size:clamp(1.25rem,2vw,1.65rem)}
.account-avatar{margin:0}.account-avatar img,.account-avatar>span{width:72px;height:72px;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 24%,transparent),0 0 24px color-mix(in srgb,var(--primary) 18%,transparent)}
.account-info-list{display:grid;gap:0;margin:20px 0}.account-info-list>div{padding:13px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 78%,transparent)}.account-info-list span{display:block;margin-bottom:5px;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.account-info-list strong{display:block;font-size:.94rem;line-height:1.5;overflow-wrap:anywhere}
.account-action-grid{display:grid;gap:10px}.account-action-button{display:flex;align-items:center;gap:13px;width:100%;padding:14px 15px;text-align:left;color:var(--foreground);background:color-mix(in srgb,var(--card) 88%,var(--primary) 12%);border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:14px;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.account-action-button svg{flex:0 0 auto;color:var(--primary)}.account-action-button span{display:grid;gap:2px}.account-action-button strong{font-size:.92rem}.account-action-button small{color:var(--muted)}.account-action-button:hover,.account-action-button:focus-visible{transform:translateY(-2px);border-color:var(--primary);box-shadow:0 10px 26px color-mix(in srgb,var(--primary) 13%,transparent);outline:none}
.account-appointments{min-width:0}.account-appointments>.row{margin-bottom:18px}
.account-modal-open{overflow:hidden}.account-editor-modal[hidden]{display:none!important}.account-editor-modal{position:fixed;inset:0;z-index:9000;display:grid;place-items:center;padding:20px}.account-editor-backdrop{position:absolute;inset:0;background:rgba(1,8,15,.80);backdrop-filter:blur(6px)}.account-editor-dialog{position:relative;z-index:1;width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 40px);display:flex;flex-direction:column;overflow:hidden;border:1px solid color-mix(in srgb,var(--primary) 52%,var(--border));border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 96%,var(--primary) 4%),var(--card));box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 34px color-mix(in srgb,var(--primary) 12%,transparent);animation:calendarModalIn .16s ease}.account-editor-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--border)}.account-editor-head h3{margin:4px 0 0;font-size:1.45rem}.account-editor-close{width:42px;height:42px;flex:0 0 auto;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--card) 85%,var(--primary) 15%);color:var(--foreground);font-size:30px;line-height:1;cursor:pointer}.account-editor-close:hover{border-color:var(--primary);color:var(--primary)}.account-editor-body{overflow:auto;padding:24px}.account-editor-body form{margin:0}.account-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:22px;flex-wrap:wrap}
@media(max-width:820px){.account-dashboard{grid-template-columns:1fr}.account-client-card{position:static}.account-action-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.account-action-grid{grid-template-columns:1fr}.account-editor-modal{padding:8px;align-items:end}.account-editor-dialog{width:100%;max-height:94vh;border-radius:18px 18px 8px 8px}.account-editor-body{padding:18px 16px}.account-client-head{align-items:flex-start}}


/* Identidad visual configurable del frontend */
.brand{min-width:0}
.brand-identity{display:flex;align-items:center;gap:12px;min-width:0}
.brand-identity.logo-right{flex-direction:row-reverse}
.brand-logo{width:var(--brand-logo-size,64px);height:var(--brand-logo-size,64px);object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--primary) 24%,transparent))}
.brand-logo.is-round{border-radius:50%;object-fit:cover}
.brand-text{display:flex;flex-direction:column;min-width:0}
.brand-text strong{font-family:var(--brand-font,Arial,Helvetica,sans-serif);font-size:32px;font-weight:900;line-height:1;color:var(--foreground)}
.brand-text small{font-family:var(--brand-font,Arial,Helvetica,sans-serif);font-size:12px;letter-spacing:.18em;margin-top:7px;font-weight:500;color:var(--foreground)}
.brand-logo-only .brand-logo{margin:0}
.brand-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.brand-preview{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--admin-line);border-radius:14px;background:var(--admin-surface-2);margin:14px 0}
.brand-preview img{width:72px;height:72px;object-fit:contain;border-radius:12px}
@media(max-width:700px){.brand-logo{width:min(var(--brand-logo-size,64px),52px);height:min(var(--brand-logo-size,64px),52px)}.brand-text strong{font-size:24px}.brand-text small{font-size:10px}.brand-config-grid{grid-template-columns:1fr}}

.brand-font-config{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1.25fr);gap:16px;align-items:end;margin:16px 0 20px;padding:16px;border:1px solid var(--admin-line,#26394f);border-radius:14px;background:color-mix(in srgb,var(--admin-surface-2,#0b1725) 82%,transparent)}
.brand-font-config .hint{grid-column:1/-1;margin:0}
.brand-font-preview{min-height:82px;display:flex;flex-direction:column;justify-content:center;padding:14px 18px;border:1px solid color-mix(in srgb,var(--admin-cyan,#27d3ff) 42%,transparent);border-radius:12px;background:#07111d;overflow:hidden}
.brand-font-preview strong{font-family:inherit!important;font-size:28px;line-height:1.05;color:#f3f8ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand-font-preview small{font-family:inherit!important;margin-top:8px;font-size:11px;letter-spacing:.16em;color:#9fdfff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){.brand-font-config{grid-template-columns:1fr}}

/* Identidad de marca compartida entre frontend y backend */
.admin-sidebar-brand-dynamic{display:flex;align-items:center;min-width:0;max-width:100%;overflow:hidden}
.admin-sidebar-brand-dynamic .brand-identity{display:flex;align-items:center;gap:10px;min-width:0;font-family:var(--brand-font,inherit)}
.admin-sidebar-brand-dynamic .brand-identity.logo-right{flex-direction:row-reverse}
.admin-sidebar-brand-dynamic .brand-logo{width:min(var(--brand-logo-size,64px),44px);height:min(var(--brand-logo-size,64px),44px);object-fit:contain;flex:0 0 auto}
.admin-sidebar-brand-dynamic .brand-logo.is-round{border-radius:50%;object-fit:cover}
.admin-sidebar-brand-dynamic .brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.05}
.admin-sidebar-brand-dynamic .brand-text strong{font-family:var(--brand-font,inherit);font-size:.96rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-sidebar-brand-dynamic .brand-text small{font-family:var(--brand-font,inherit);font-size:.62rem;color:var(--admin-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}
.admin-sidebar.collapsed .admin-sidebar-brand-dynamic .brand-text{display:none}
.admin-sidebar.collapsed .admin-sidebar-brand-dynamic .brand-logo{width:34px;height:34px}
.admin-neon-title>strong{font-family:var(--brand-font,inherit)}

/* Laboratorio SMD: consola ligera inspirada en instrumentación de nave espacial */
.lab-console{background:linear-gradient(180deg,rgba(2,9,20,.98),rgba(2,6,14,.98));border:1px solid color-mix(in srgb,var(--admin-cyan) 55%,transparent);box-shadow:0 0 28px rgba(22,217,244,.10),inset 0 0 45px rgba(21,151,255,.04);border-radius:18px;padding:24px;position:relative;overflow:hidden}.lab-console:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.8%,rgba(22,217,244,.025) 50%,transparent 50.2%),linear-gradient(rgba(22,217,244,.018) 1px,transparent 1px);background-size:90px 100%,100% 42px}.lab-head,.lab-displays,.lab-controls,.lab-modules,.lab-status{position:relative;z-index:1}.lab-head{display:flex;justify-content:space-between;gap:20px;align-items:start;border-bottom:1px solid rgba(22,217,244,.2);padding-bottom:18px}.lab-kicker{font-family:var(--brand-font);letter-spacing:.16em;color:var(--admin-cyan);font-size:.75rem}.lab-head h2{font-family:var(--brand-font);font-size:2rem;margin:.25rem 0}.lab-head p{color:var(--admin-muted);margin:0}.lab-displays{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.lab-display{min-height:145px;border:1px solid rgba(22,217,244,.35);border-radius:12px;background:#020611;box-shadow:inset 0 0 28px rgba(0,174,255,.09),0 0 15px rgba(0,174,255,.08);display:grid;grid-template-columns:1fr auto;align-content:center;padding:18px 24px}.lab-display small{grid-column:1/-1;color:#80dff1;letter-spacing:.18em}.lab-display strong{font-family:monospace;font-size:3.3rem;color:#16f3ff;text-shadow:0 0 14px rgba(22,243,255,.55);font-weight:500}.lab-display em{align-self:end;padding-bottom:10px;color:#75a8bd;font-style:normal}.lab-status{display:flex;gap:9px;align-items:center;color:var(--admin-muted);font-size:.86rem;margin:-8px 0 20px}.lab-led{width:8px;height:8px;border-radius:50%;background:#18d889;box-shadow:0 0 10px #18d889}.lab-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:13px;padding:20px;border:1px solid rgba(22,217,244,.28);border-radius:14px;background:rgba(3,10,20,.75)}.lab-control-wrap{display:grid;gap:6px}.lab-control{min-height:112px;position:relative;border:1px solid rgba(22,217,244,.42);border-radius:10px;background:linear-gradient(180deg,#071526,#020711);color:#dffcff;box-shadow:inset 0 0 18px rgba(22,217,244,.06),0 0 10px rgba(22,217,244,.08);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:.18s}.lab-control:hover{transform:translateY(-2px);border-color:#16e9ff;box-shadow:inset 0 0 22px rgba(22,217,244,.12),0 0 18px rgba(22,217,244,.2)}.lab-control-symbol{font-size:1.7rem;color:#16e9ff;text-shadow:0 0 12px #16e9ff}.lab-control strong{font-family:var(--brand-font);font-size:.78rem;text-transform:uppercase}.lab-control small{font-family:monospace;color:#6b91a4;font-size:.68rem}.lab-control-number{position:absolute;right:7px;top:6px;background:var(--admin-cyan);color:#02101a;width:20px;height:20px;border-radius:50%;font-size:.68rem;display:grid;place-items:center;font-weight:800}.lab-edit{border:1px solid rgba(22,217,244,.22);background:transparent;color:#87c7d8;border-radius:8px;padding:5px;cursor:pointer}.lab-edit:hover{color:white;border-color:#16e9ff}.lab-modules{margin-top:20px}.lab-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.lab-module-grid>div{background:rgba(7,21,38,.8);border:1px solid rgba(22,217,244,.18);border-radius:10px;padding:14px}.lab-module-grid small{display:block;color:#75a8bd}.lab-module-grid strong{font-family:monospace;color:#dffcff;font-size:1.25rem}.lab-modal-layer{position:fixed;inset:0;z-index:10020;background:rgba(0,3,10,.82);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.lab-modal{width:min(620px,96vw);max-height:88vh;overflow:auto;background:linear-gradient(180deg,#0a1727,#050b14);border:1px solid rgba(22,217,244,.5);border-radius:18px;padding:26px;box-shadow:0 0 45px rgba(22,217,244,.16);position:relative}.lab-modal h3{font-family:var(--brand-font);color:#eafcff;margin-top:0}.lab-modal-x{position:absolute;right:14px;top:10px;border:0;background:transparent;color:#a9bfd2;font-size:2rem;cursor:pointer}@media(max-width:800px){.lab-displays{grid-template-columns:1fr}.lab-display{min-height:105px}.lab-display strong{font-size:2.6rem}.lab-head{flex-direction:column}}

/* Laboratorio: acceso SETUP protegido */
.lab-setup-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.lab-setup-toggle{border:1px solid rgba(61,220,255,.65);background:linear-gradient(180deg,#0b2032,#06111d);color:#72e9ff;border-radius:9px;padding:7px 10px;font:700 11px/1 Orbitron,system-ui,sans-serif;letter-spacing:.09em;box-shadow:inset 0 0 12px rgba(0,204,255,.08),0 0 12px rgba(0,204,255,.10);cursor:pointer}.lab-setup-toggle:hover{box-shadow:inset 0 0 15px rgba(0,204,255,.16),0 0 18px rgba(0,204,255,.22);color:#fff}.lab-edit{animation:labEditReveal .18s ease-out}@keyframes labEditReveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* Laboratorio: botón Configurar ESP32 con estética de consola / nave */
.lab-config{
  position:relative;
  overflow:hidden;
  min-height:38px;
  padding:9px 16px 9px 38px!important;
  border:1px solid rgba(22,233,255,.72)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,#0a2639 0%,#061522 52%,#030b13 100%)!important;
  color:#dffcff!important;
  font:700 11px/1.1 var(--brand-font,Orbitron),system-ui,sans-serif!important;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:inset 0 0 18px rgba(22,233,255,.09),0 0 13px rgba(22,233,255,.13)!important;
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease;
}
.lab-config:before{
  content:"◈";
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  color:#16e9ff;
  font-size:17px;
  text-shadow:0 0 10px rgba(22,233,255,.85);
}
.lab-config:after{
  content:"";
  position:absolute;
  left:9px;right:9px;bottom:4px;
  height:1px;
  background:linear-gradient(90deg,transparent,#16e9ff,transparent);
  opacity:.5;
}
.lab-config:hover{
  transform:translateY(-2px);
  color:#fff!important;
  border-color:#16f3ff!important;
  box-shadow:inset 0 0 22px rgba(22,233,255,.15),0 0 20px rgba(22,233,255,.25)!important;
}
.lab-config:active{transform:translateY(0) scale(.98)}

/* Laboratorio: Configurar ESP32 — mismo lenguaje visual de los controles principales */
.lab-config{
  min-height:64px!important;
  padding:9px 16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  border:1px solid rgba(22,217,244,.42)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,#071526,#020711)!important;
  color:#dffcff!important;
  box-shadow:inset 0 0 18px rgba(22,217,244,.06),0 0 10px rgba(22,217,244,.08)!important;
  cursor:pointer!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}
.lab-config:before,.lab-config:after{content:none!important;display:none!important}
.lab-config-icon{font-size:1.75rem;color:#16e9ff;text-shadow:0 0 12px #16e9ff;line-height:1}
.lab-config>span:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.lab-config strong{font-family:var(--brand-font);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:#dffcff}
.lab-config small{font-family:monospace;color:#6b91a4;font-size:.62rem;letter-spacing:.04em}
.lab-config:hover{transform:translateY(-2px)!important;border-color:#16e9ff!important;box-shadow:inset 0 0 22px rgba(22,217,244,.12),0 0 18px rgba(22,217,244,.20)!important;background:linear-gradient(180deg,#071526,#020711)!important}
.lab-config:hover .lab-config-icon{color:#fff;text-shadow:0 0 15px #16e9ff}
.lab-config:active{transform:translateY(0) scale(.985)!important}

/* Textos y apariencia: tarjetas compactas rectangulares */
.content-option-grid{
  grid-template-columns:repeat(4,minmax(190px,1fr));
  gap:12px;
  margin:16px 0 20px;
}
.content-option-card{
  min-height:0;
  height:auto;
  aspect-ratio:auto;
  padding:12px 14px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:11px;
  row-gap:2px;
  align-items:center;
  justify-content:initial;
  border-radius:14px;
}
.content-option-card:hover,.content-option-card:focus-visible{transform:translateY(-2px)}
.content-option-icon{
  grid-column:1;
  grid-row:1 / span 2;
  width:42px;
  height:42px;
  border-radius:11px;
}
.content-option-icon svg{width:23px;height:23px}
.content-option-flags{
  grid-column:1;
  grid-row:1 / span 2;
  width:42px;
  height:42px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3px;
  align-content:center;
}
.content-option-flags svg{width:19px;height:13px;border-radius:2px}
.content-option-card strong{
  grid-column:2;
  grid-row:1;
  align-self:end;
  font-size:.94rem;
  line-height:1.18;
}
.content-option-card small{
  grid-column:2;
  grid-row:2;
  align-self:start;
  font-size:.72rem;
  line-height:1.22;
}
@media(max-width:1100px){
  .content-option-grid{grid-template-columns:repeat(2,minmax(190px,1fr))}
  .content-option-card{min-height:0}
}
@media(max-width:600px){
  .content-option-grid{grid-template-columns:1fr;gap:9px}
  .content-option-card{min-height:0;padding:11px 12px}
  .content-option-card small{display:block}
}

/* Usuarios del backend: tabla administrativa compacta */
.users-title-row{align-items:flex-end;margin-bottom:1rem}.users-count{padding:.45rem .8rem;border:1px solid var(--admin-line);border-radius:999px;color:var(--admin-cyan);background:color-mix(in srgb,var(--admin-cyan) 8%,transparent);font-size:.82rem}.users-table-shell{overflow:auto;border:1px solid var(--admin-line);border-radius:16px;background:color-mix(in srgb,var(--admin-surface) 94%,transparent);box-shadow:0 18px 45px rgba(0,0,0,.2)}.users-table{width:100%;border-collapse:collapse;min-width:980px}.users-table th{padding:.75rem .9rem;text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--admin-muted);background:var(--admin-surface-2);border-bottom:1px solid var(--admin-line)}.users-table td{padding:.78rem .9rem;border-bottom:1px solid color-mix(in srgb,var(--admin-line) 72%,transparent);vertical-align:middle}.users-table tbody tr:hover{background:color-mix(in srgb,var(--admin-cyan) 5%,transparent)}.users-table tbody tr:last-child td{border-bottom:0}.user-identity,.user-edit-head{display:flex;align-items:center;gap:.75rem}.user-identity strong,.user-identity small,.users-table td>small,.user-edit-head strong,.user-edit-head small{display:block}.user-identity small,.users-table td>small,.user-edit-head small{color:var(--admin-muted);font-size:.78rem;margin-top:.12rem}.user-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:12px;overflow:hidden;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--admin-cyan) 65%,var(--admin-line));background:linear-gradient(145deg,color-mix(in srgb,var(--admin-cyan) 15%,var(--admin-surface)),var(--admin-surface-2));color:var(--admin-cyan);font-weight:800;box-shadow:inset 0 0 16px color-mix(in srgb,var(--admin-cyan) 10%,transparent)}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-avatar.large{width:58px;height:58px;flex-basis:58px;border-radius:15px}.user-edit-head{padding:.7rem;margin-bottom:.7rem;border:1px solid var(--admin-line);border-radius:14px;background:var(--admin-surface-2)}.role-chip{display:inline-flex;padding:.35rem .58rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--admin-violet) 55%,var(--admin-line));color:var(--admin-violet);background:color-mix(in srgb,var(--admin-violet) 8%,transparent);font-size:.78rem;white-space:nowrap}.users-actions{white-space:nowrap}.users-actions .button,.users-actions .text-button{margin:.12rem}.user-edit-button{padding:.48rem .72rem}.admin-top-link{border:1px solid color-mix(in srgb,var(--accent-cyan) 55%,transparent);border-radius:9px;padding:.45rem .7rem!important;color:var(--accent-cyan)!important;background:color-mix(in srgb,var(--accent-cyan) 7%,transparent)}

/* Mi cuenta: asegurar legibilidad de títulos y subtítulos del menú lateral */
body:not(:has(.admin-workspace)) .account-client-card .account-action-button,
body:not(:has(.admin-workspace)) .account-client-card .account-action-button strong{
  color:var(--foreground)!important;
}
body:not(:has(.admin-workspace)) .account-client-card .account-action-button small{
  color:color-mix(in srgb,var(--foreground) 72%,var(--muted) 28%)!important;
  opacity:1!important;
}
body:not(:has(.admin-workspace)) .account-client-card .account-action-button:hover small,
body:not(:has(.admin-workspace)) .account-client-card .account-action-button:focus-visible small{
  color:var(--foreground)!important;
}

/* SMD 2026-09-16 — controles seleccionados y botones con acabado futurista */
.admin-workspace .admin-sidebar .admin-nav button.active{
  position:relative!important;
  overflow:hidden!important;
  color:#f5fdff!important;
  background:linear-gradient(135deg,rgba(7,24,38,.98),rgba(9,46,63,.96))!important;
  border-color:var(--admin-cyan)!important;
  box-shadow:inset 0 0 0 1px rgba(23,217,255,.18),inset 0 0 20px rgba(23,217,255,.08),0 0 0 1px rgba(23,217,255,.12),0 0 18px rgba(23,217,255,.28),0 9px 24px rgba(0,0,0,.30)!important;
  text-shadow:0 0 10px rgba(23,217,255,.32);
}
.admin-workspace .admin-sidebar .admin-nav button.active::before{
  content:"";position:absolute;left:0;top:18%;bottom:18%;width:3px;border-radius:0 4px 4px 0;
  background:var(--admin-cyan);box-shadow:0 0 9px var(--admin-cyan),0 0 18px rgba(23,217,255,.7);
}
.admin-workspace .admin-sidebar .admin-nav button.active::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(110deg,transparent 0 36%,rgba(255,255,255,.075) 48%,transparent 60%);
  transform:translateX(-115%);animation:smdSelectedScan 4.2s ease-in-out infinite;
}
.admin-workspace .admin-sidebar .admin-nav button.active svg{color:var(--admin-cyan)!important;filter:drop-shadow(0 0 6px rgba(23,217,255,.7));}
@keyframes smdSelectedScan{0%,62%{transform:translateX(-115%)}82%,100%{transform:translateX(115%)}}

/* Botones de acción del backend: sustituye el bloque azul plano por consola neón. */
.admin-workspace button.primary,.admin-workspace .button.primary,.admin-workspace a.button.primary,
.admin-workspace button[type="submit"]:not(.danger):not(.admin-sidebar-toggle),
.admin-workspace .btn-primary{
  color:#effdff!important;
  background:linear-gradient(145deg,#081d2b,#0a3142)!important;
  border:1px solid var(--admin-cyan)!important;
  box-shadow:inset 0 0 16px rgba(23,217,255,.07),0 0 13px rgba(23,217,255,.18),0 8px 20px rgba(0,0,0,.24)!important;
  text-shadow:0 0 8px rgba(23,217,255,.24);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.admin-workspace button.primary:hover,.admin-workspace .button.primary:hover,.admin-workspace a.button.primary:hover,
.admin-workspace button[type="submit"]:not(.danger):not(.admin-sidebar-toggle):hover,
.admin-workspace .btn-primary:hover{
  transform:translateY(-2px);filter:brightness(1.10);border-color:#7eeeff!important;
  box-shadow:inset 0 0 20px rgba(23,217,255,.11),0 0 21px rgba(23,217,255,.30),0 11px 24px rgba(0,0,0,.30)!important;
}

/* Mi cuenta: los controles laterales reciben el mismo lenguaje visual. */
body:not(:has(.admin-workspace)) .account-action-button{
  background:linear-gradient(145deg,color-mix(in srgb,var(--card) 94%,#071522),color-mix(in srgb,var(--card) 88%,var(--primary) 12%));
  border-color:color-mix(in srgb,var(--primary) 48%,var(--border));
  box-shadow:inset 0 0 14px color-mix(in srgb,var(--primary) 5%,transparent),0 8px 20px rgba(0,0,0,.12);
}
body:not(:has(.admin-workspace)) .account-action-button:hover,
body:not(:has(.admin-workspace)) .account-action-button:focus-visible{
  border-color:var(--primary);box-shadow:inset 0 0 18px color-mix(in srgb,var(--primary) 8%,transparent),0 0 18px color-mix(in srgb,var(--primary) 22%,transparent),0 10px 26px rgba(0,0,0,.18);
}
@media(prefers-reduced-motion:reduce){.admin-workspace .admin-sidebar .admin-nav button.active::after{animation:none}}

/* SMD — botones generales del backend con acabado futurista (Calendario, Páginas/Eventos y equivalentes) */
.admin-workspace .button:not(.secondary):not(.danger),
.admin-workspace button.button:not(.secondary):not(.danger),
.admin-workspace a.button:not(.secondary):not(.danger){
  position:relative;
  overflow:hidden;
  color:#effdff!important;
  background:linear-gradient(145deg,#061923 0%,#082c3a 55%,#073344 100%)!important;
  border:1px solid var(--admin-cyan)!important;
  border-radius:11px!important;
  box-shadow:inset 0 0 0 1px rgba(23,217,255,.07),inset 0 0 18px rgba(23,217,255,.07),0 0 13px rgba(23,217,255,.16),0 8px 20px rgba(0,0,0,.25)!important;
  text-shadow:0 0 8px rgba(23,217,255,.30);
  letter-spacing:.02em;
  transition:transform .18s ease,filter .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.admin-workspace .button:not(.secondary):not(.danger):hover,
.admin-workspace button.button:not(.secondary):not(.danger):hover,
.admin-workspace a.button:not(.secondary):not(.danger):hover{
  transform:translateY(-2px);
  filter:brightness(1.12);
  color:#fff!important;
  border-color:#83efff!important;
  box-shadow:inset 0 0 22px rgba(23,217,255,.12),0 0 22px rgba(23,217,255,.32),0 11px 25px rgba(0,0,0,.30)!important;
}
/* Identidad extra para las acciones principales señaladas */
.admin-workspace #calendar-new,
.admin-workspace #calendar-day-new,
.admin-workspace #new-page{
  min-height:42px;
  padding:.62rem 1rem!important;
  font-weight:750;
  text-transform:uppercase;
  letter-spacing:.055em;
}

/* SMD 2026-09-16 — desplazamiento unificado de página
   El documento es el único contenedor vertical principal. El menú lateral y
   el contenido del backend dejan de tener scroll vertical independiente. */
html{
  overflow-y:auto;
  overflow-x:hidden;
  scroll-behavior:smooth;
}
body{
  min-height:100%;
  overflow-x:hidden;
  overflow-y:visible;
}
.admin-workspace,
.admin-workspace.sidebar-collapsed{
  height:auto!important;
  min-height:100vh!important;
  overflow:visible!important;
  align-items:stretch!important;
}
.admin-sidebar,
.admin-workspace.sidebar-collapsed.sidebar-hover .admin-sidebar{
  position:sticky!important;
  top:0!important;
  height:auto!important;
  min-height:100vh!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  align-self:start!important;
  overscroll-behavior:auto!important;
}
.admin-main{
  height:auto!important;
  min-height:100vh!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  overscroll-behavior:auto!important;
  scrollbar-gutter:auto!important;
}
/* En pantallas pequeñas el panel lateral continúa integrado al mismo scroll. */
@media(max-width:800px){
  .admin-sidebar,
  .admin-sidebar:hover,
  .admin-workspace.sidebar-collapsed.sidebar-hover .admin-sidebar{
    position:sticky!important;
    top:0!important;
    height:auto!important;
    min-height:100vh!important;
    max-height:none!important;
    overflow-y:visible!important;
  }
  .admin-main{height:auto!important;min-height:100vh!important;overflow-y:visible!important}
}

/* Calendario: resumen visible de cada cita directamente en el día */
.calendar-cell .calendar-chip.calendar-appointment-summary{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:2px 6px;
  align-items:start;
  padding:6px 7px;
  min-height:auto;
  white-space:normal;
  text-align:left;
  line-height:1.2;
}
.calendar-appointment-summary .cal-time{font-weight:800;color:var(--accent,#62e8ff);white-space:nowrap}
.calendar-appointment-summary .cal-client{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.calendar-appointment-summary .cal-vehicle,
.calendar-appointment-summary .cal-fault{grid-column:1/-1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;opacity:.88}
.calendar-appointment-summary .cal-fault{opacity:.72}
.calendar-cell{min-height:132px;align-content:start}
@media (max-width:760px){.calendar-cell{min-height:112px}.calendar-appointment-summary .cal-vehicle,.calendar-appointment-summary .cal-fault{font-size:.68rem}}


/* Calendario: estado real de la cita en la esquina inferior derecha */
.calendar-appointment-summary .cal-status{
  grid-column:1/-1;
  justify-self:end;
  margin-top:3px;
  padding:2px 7px;
  border:1px solid rgba(98,232,255,.45);
  border-radius:999px;
  background:rgba(5,18,32,.82);
  color:#bff7ff;
  font-size:.61rem;
  font-weight:800;
  line-height:1.25;
  letter-spacing:.045em;
  text-transform:uppercase;
  box-shadow:0 0 9px rgba(98,232,255,.10);
}
.calendar-appointment-summary .cal-status-confirmada{border-color:rgba(70,235,180,.58);color:#a7ffdf;box-shadow:0 0 9px rgba(70,235,180,.12)}
.calendar-appointment-summary .cal-status-completada{border-color:rgba(157,128,255,.62);color:#d7caff;box-shadow:0 0 9px rgba(157,128,255,.13)}
.calendar-appointment-summary .cal-status-cancelada{border-color:rgba(255,105,125,.60);color:#ffb8c2;box-shadow:0 0 9px rgba(255,105,125,.12)}
.calendar-appointment-summary .cal-status-pendiente{border-color:rgba(255,195,90,.60);color:#ffe0a1;box-shadow:0 0 9px rgba(255,195,90,.12)}

/* Calendario backend: hora de la cita siempre visible, independiente del tema */
.admin-shell .calendar-cell .calendar-chip.calendar-appointment-summary .cal-time,
.admin-main .calendar-cell .calendar-appointment-summary .cal-time,
.calendar-cell .calendar-appointment-summary .cal-time {
  display:inline-flex !important;
  align-items:center !important;
  width:max-content !important;
  min-width:58px !important;
  padding:2px 6px !important;
  border:1px solid rgba(111,243,255,.72) !important;
  border-radius:5px !important;
  background:#071a27 !important;
  color:#d9fbff !important;
  -webkit-text-fill-color:#d9fbff !important;
  opacity:1 !important;
  visibility:visible !important;
  font-weight:900 !important;
  text-shadow:0 0 5px rgba(111,243,255,.85),0 0 11px rgba(111,243,255,.35) !important;
  box-shadow:inset 0 0 8px rgba(55,220,255,.10),0 0 7px rgba(55,220,255,.16) !important;
}

/* Acciones de acceso interno en Cuenta: separación visual clara */
.auth-page .staff-access-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:14px 24px;
    margin-top:4px;
}
.auth-page .staff-access-actions .text-button{
    margin:0;
    padding:10px 14px;
}
@media (max-width:520px){
    .auth-page .staff-access-actions{gap:8px 16px}
}
/* Estadísticas y galerías de servicios */
.service-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:-4px 0 14px}.service-gallery img{width:100%;height:76px;object-fit:cover;border-radius:10px;border:1px solid var(--border);opacity:.92}.service-gallery-admin{margin:18px 0}.service-gallery-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:12px}.service-gallery-admin-item{padding:10px;border:1px solid var(--admin-line);border-radius:14px;background:var(--admin-surface-2)}.service-gallery-admin-item img{width:100%;height:100px;object-fit:cover;border-radius:10px}.service-gallery-admin-item label{display:block;margin-top:8px;font-size:.82rem}.service-gallery-admin-item input[type=number]{width:100%;margin-top:4px}
.analytics-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.analytics-cards article{padding:18px;border:1px solid var(--admin-line);border-radius:16px;background:linear-gradient(145deg,var(--admin-surface),var(--admin-surface-2));box-shadow:inset 0 0 24px rgba(23,217,255,.04)}.analytics-cards small{display:block;color:var(--admin-muted)}.analytics-cards strong{display:block;font-size:2rem;margin-top:7px;color:var(--admin-cyan)}.analytics-period{display:grid;gap:6px;color:var(--admin-muted)}.analytics-period select{min-width:130px}.analytics-bars{height:220px;display:flex;align-items:end;gap:5px;padding-top:20px;overflow-x:auto}.analytics-bar-item{height:100%;min-width:20px;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:6px}.analytics-bar-item span{width:70%;min-height:4px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,var(--admin-cyan),var(--admin-violet));box-shadow:0 0 12px rgba(23,217,255,.28)}.analytics-bar-item small{font-size:.66rem;color:var(--admin-muted);writing-mode:vertical-rl}.analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0}.analytics-ranking{padding:16px;border:1px solid var(--admin-line);border-radius:16px;background:var(--admin-surface)}.analytics-ranking table{width:100%;border-collapse:collapse}.analytics-ranking th,.analytics-ranking td{padding:9px 6px;border-bottom:1px solid var(--admin-line);text-align:left}.analytics-ranking td:nth-child(n+2),.analytics-ranking th:nth-child(n+2){text-align:right}.analytics-ranking small{display:block;color:var(--admin-muted);font-size:.72rem;margin-top:3px;word-break:break-all}@media(max-width:900px){.analytics-cards{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:1fr}}

/* Traducciones asistidas de productos */
.product-translations{margin:18px 0;padding:16px;border:1px solid var(--admin-border,var(--border));border-radius:14px;background:rgba(7,18,35,.45)}
.product-translations legend{padding:0 8px;font-weight:800}
.translation-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:12px}
.translation-product-grid section{padding:14px;border:1px solid var(--admin-border,var(--border));border-radius:12px;background:rgba(5,13,27,.5)}
.translation-product-grid h4{margin:0 0 10px}
@media(max-width:760px){.translation-product-grid{grid-template-columns:1fr}}

/* Recomienda SMDTRONIC */
.recommend-card{margin-top:18px;padding:18px;border:1px solid color-mix(in srgb,var(--primary) 55%,transparent);border-radius:16px;background:linear-gradient(135deg,rgba(8,20,34,.92),rgba(13,35,48,.76));box-shadow:inset 0 0 24px rgba(0,220,255,.05);display:grid;gap:14px}.recommend-card strong{display:block;font-size:1.08rem;margin:.3rem 0}.recommend-card p{margin:.25rem 0;color:var(--muted)}.share-actions{display:flex;flex-wrap:wrap;gap:10px}.share-network{appearance:none;border:1px solid rgba(95,230,255,.38);border-radius:999px;background:rgba(7,20,31,.9);color:var(--foreground);padding:9px 14px;text-decoration:none;font:inherit;cursor:pointer;transition:.18s ease}.share-network:hover{transform:translateY(-1px);border-color:var(--primary);box-shadow:0 0 16px rgba(65,225,255,.18)}.share-network.whatsapp{border-color:rgba(72,230,151,.5)}.share-network.facebook{border-color:rgba(90,153,255,.55)}.share-network.linkedin{border-color:rgba(86,180,255,.55)}.share-public .share-hero{display:grid;grid-template-columns:minmax(220px,420px) 1fr;gap:28px;align-items:center;overflow:hidden}.share-public .share-hero>img{width:100%;max-height:380px;object-fit:cover;border-radius:14px}.share-admin .share-network-settings{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0}.share-copy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.share-copy-grid textarea{min-height:170px}@media(max-width:900px){.share-copy-grid,.share-public .share-hero{grid-template-columns:1fr}}

/* Galería de servicios: detalle futurista activable desde el backend */
.service-gallery-entry{display:inline-flex;align-items:center;gap:8px;margin:2px 0 14px;padding:9px 13px;border:1px solid rgba(55,229,255,.38);border-radius:11px;background:linear-gradient(135deg,rgba(5,19,35,.96),rgba(7,35,44,.88));color:#dffcff;box-shadow:inset 0 0 18px rgba(0,221,255,.05),0 0 16px rgba(0,221,255,.08);cursor:pointer;font:inherit;font-weight:700}.service-gallery-entry:hover{border-color:rgba(117,255,96,.72);box-shadow:0 0 20px rgba(85,255,80,.14);transform:translateY(-1px)}
body.gallery-open{overflow:hidden}.service-gallery-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:24px;background:rgba(1,7,14,.82);backdrop-filter:blur(12px)}.service-gallery-dialog{position:relative;width:min(1040px,96vw);max-height:92vh;overflow:auto;padding:28px;border:1px solid rgba(51,225,255,.42);border-radius:22px;background:linear-gradient(145deg,rgba(5,17,31,.99),rgba(4,29,35,.98));box-shadow:0 24px 80px rgba(0,0,0,.6),0 0 34px rgba(0,220,255,.12),inset 0 0 45px rgba(42,255,123,.025)}.service-gallery-dialog:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(90deg,rgba(54,255,110,.13),transparent 20%,transparent 80%,rgba(0,220,255,.1));opacity:.45}.service-gallery-close{position:absolute;z-index:2;right:18px;top:14px;width:42px;height:42px;border:1px solid rgba(79,231,255,.42);border-radius:12px;background:#071827;color:#e9fdff;font-size:28px;line-height:1;cursor:pointer}.service-gallery-close:hover{color:#7cff70;border-color:#7cff70}.service-gallery-heading{position:relative;padding-right:50px;margin-bottom:20px}.service-gallery-heading h2{margin:5px 0 8px;color:#f2feff}.service-gallery-heading p{max-width:820px;color:var(--muted)}.service-gallery-view{position:relative;display:grid;place-items:center;min-height:360px;border:1px solid rgba(57,217,255,.2);border-radius:18px;overflow:hidden;background:#020a11}.service-gallery-main{display:block;width:100%;height:min(58vh,580px);object-fit:contain}.service-gallery-nav{position:absolute;z-index:2;top:50%;transform:translateY(-50%);width:46px;height:62px;border:1px solid rgba(80,237,255,.4);background:rgba(2,14,24,.78);color:#eaffff;border-radius:12px;font-size:36px;cursor:pointer;backdrop-filter:blur(8px)}.service-gallery-nav:hover{border-color:#75ff67;color:#75ff67}.service-gallery-nav.prev{left:14px}.service-gallery-nav.next{right:14px}.service-gallery-thumbs{display:flex;gap:10px;overflow-x:auto;padding:14px 2px 5px}.service-gallery-thumbs button{flex:0 0 104px;height:72px;padding:3px;border:1px solid rgba(79,219,255,.22);border-radius:10px;background:#061522;cursor:pointer;overflow:hidden}.service-gallery-thumbs button[aria-pressed="true"]{border-color:#76ff69;box-shadow:0 0 16px rgba(100,255,94,.24)}.service-gallery-thumbs img{width:100%;height:100%;object-fit:cover;border-radius:6px}.service-gallery-footer{display:flex;justify-content:flex-end;margin-top:18px}@media(max-width:700px){.service-gallery-modal{padding:10px}.service-gallery-dialog{padding:20px 14px}.service-gallery-view{min-height:230px}.service-gallery-main{height:46vh}.service-gallery-nav{width:38px;height:52px}.service-gallery-nav.prev{left:7px}.service-gallery-nav.next{right:7px}.service-gallery-thumbs button{flex-basis:82px;height:60px}}
/* Carga protegida de galerías: cola secuencial */
.gallery-upload-progress{margin:12px 0 16px;padding:13px 14px;border:1px solid rgba(56,226,255,.32);border-radius:12px;background:linear-gradient(135deg,rgba(4,18,32,.96),rgba(6,34,39,.9));box-shadow:inset 0 0 20px rgba(0,221,255,.04)}
.gallery-upload-progress strong,.gallery-upload-progress span,.gallery-upload-progress small{display:block}.gallery-upload-progress span{margin-top:5px;color:var(--admin-muted);word-break:break-word}.gallery-upload-progress small{margin-top:6px;color:var(--admin-cyan)}
.gallery-upload-meter{height:7px;margin-top:10px;border:1px solid rgba(78,225,255,.22);border-radius:999px;overflow:hidden;background:rgba(0,0,0,.35)}.gallery-upload-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--admin-cyan),#76ff69);box-shadow:0 0 12px rgba(76,239,255,.35);transition:width .2s ease}

/* Corrección galería frontend: imágenes y contraste del subtítulo */
.service-gallery-heading p{color:#bcd7e2!important;opacity:1!important;text-shadow:0 1px 2px rgba(0,0,0,.65)}
.service-gallery-heading .eyebrow{color:#72ff76!important}
.service-gallery-image-error{position:absolute;inset:0;display:grid;place-items:center;padding:28px;text-align:center;color:#d9f8ff;background:linear-gradient(145deg,#03101b,#061d26);font-weight:700}
.service-gallery-image-error[hidden]{display:none!important}
.service-gallery-main[hidden]{display:none!important}

/* Galería de servicios: invitación visual sólo al interactuar */
.service-card.has-gallery{position:relative;cursor:pointer;overflow:hidden;isolation:isolate;transition:border-color .28s ease,box-shadow .28s ease,transform .28s ease,background .28s ease}
.service-card.has-gallery:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(135deg,rgba(45,239,255,.08),transparent 42%,rgba(112,255,91,.09));opacity:0;transition:opacity .28s ease}
.service-card.has-gallery>*{position:relative;z-index:1}
.service-card.has-gallery:hover,.service-card.has-gallery:focus-visible{border-color:rgba(89,239,255,.72);box-shadow:0 0 0 1px rgba(82,233,255,.14),0 14px 36px rgba(0,220,255,.12),0 0 24px rgba(112,255,91,.09);transform:translateY(-3px);background:linear-gradient(145deg,rgba(5,24,38,.98),rgba(5,38,42,.96))}
.service-card.has-gallery:hover:before,.service-card.has-gallery:focus-visible:before{opacity:1}
.service-card.has-gallery .service-image{transition:transform .38s ease,filter .38s ease,box-shadow .38s ease}
.service-card.has-gallery:hover .service-image,.service-card.has-gallery:focus-visible .service-image{transform:scale(1.018);filter:brightness(1.08) saturate(1.08);box-shadow:0 0 24px rgba(36,226,255,.12)}
.service-gallery-hover{position:absolute!important;z-index:4!important;left:50%;top:92px;display:flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid rgba(92,240,255,.72);border-radius:999px;background:rgba(2,15,25,.88);color:#eaffff;font-weight:800;letter-spacing:.02em;white-space:nowrap;box-shadow:0 0 22px rgba(54,228,255,.18),inset 0 0 15px rgba(105,255,94,.06);backdrop-filter:blur(9px);opacity:0;transform:translate(-50%,8px) scale(.96);pointer-events:none;transition:opacity .24s ease,transform .24s ease,border-color .24s ease,color .24s ease}
.service-card.has-gallery:hover .service-gallery-hover,.service-card.has-gallery:focus-visible .service-gallery-hover{opacity:1;transform:translate(-50%,0) scale(1);border-color:#75ff6b;color:#f3ffff;text-shadow:0 0 10px rgba(102,255,107,.34)}
.service-card.has-gallery:focus-visible{outline:2px solid rgba(88,235,255,.82);outline-offset:3px}
@media (hover:none),(pointer:coarse){.service-card.has-gallery{cursor:pointer}.service-gallery-hover{display:none!important;opacity:0!important;visibility:hidden!important}.service-card.has-gallery:active{border-color:rgba(89,239,255,.82);box-shadow:0 0 0 1px rgba(82,233,255,.16),0 12px 30px rgba(0,220,255,.13);transform:scale(.992)}}
@media (prefers-reduced-motion:reduce){.service-card.has-gallery,.service-card.has-gallery:before,.service-card.has-gallery .service-image,.service-gallery-hover{transition:none!important}.service-card.has-gallery:hover,.service-card.has-gallery:focus-visible{transform:none}}
/* Informes técnicos y técnicos — extensión SMDTRONIC */
.technician-item{display:grid!important;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}.technician-item strong,.technician-item span{grid-column:2}.technician-avatar,.technician-profile-preview{width:64px;height:64px;border-radius:16px;object-fit:cover;border:1px solid rgba(92,235,221,.55);box-shadow:0 0 18px rgba(92,235,221,.15)}.technician-avatar{grid-row:1/3}.technician-profile-preview{width:96px;height:96px;margin:0 auto 14px;display:block}.technical-evidence,.technical-attachment{margin:16px 0;padding:15px;border:1px solid rgba(82,220,218,.25);border-radius:14px;background:linear-gradient(145deg,rgba(6,20,31,.76),rgba(10,31,39,.55))}.technical-evidence legend,.technical-attachment legend{padding:0 8px;color:#9fffea;font-weight:800}.evidence-admin-grid,.client-evidence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:12px}.evidence-admin-item{padding:10px;border:1px solid rgba(124,241,219,.22);border-radius:12px;background:rgba(3,14,23,.68)}.evidence-admin-item img,.client-evidence-grid img{width:100%;height:130px;object-fit:cover;border-radius:9px;border:1px solid rgba(116,238,225,.35)}.evidence-admin-item input[type=text]{width:100%;margin:8px 0}.client-tech-report h4{margin:15px 0 6px;color:#9fffea}.client-evidence-grid a{display:block;padding:8px;border:1px solid rgba(102,235,220,.25);border-radius:12px;background:rgba(4,18,28,.55);text-decoration:none;color:var(--foreground);transition:.2s}.client-evidence-grid a:hover{border-color:#8fffe8;box-shadow:0 0 18px rgba(91,232,218,.18);transform:translateY(-2px)}.client-evidence-grid span{display:block;padding-top:6px;font-size:.84rem}.repair-state{padding:5px 10px;border-radius:999px;border:1px solid rgba(155,255,95,.42);color:#b9ff8d;background:rgba(93,173,56,.09);font-size:.8rem;font-weight:800}.scanner-result{padding:10px 12px;border-left:3px solid #5ce8dc;background:rgba(5,27,35,.45);border-radius:7px}.report-download{margin-top:14px}.report-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.technical-pdf-button{padding:.7rem 1rem!important;border-color:rgba(91,232,218,.55)!important;box-shadow:0 0 18px rgba(91,232,218,.11)}
/* SMDTRONIC · Square online payments */
.payment-page{max-width:860px}.square-checkout{position:relative;overflow:hidden;border:1px solid rgba(61,242,190,.32);box-shadow:0 24px 70px rgba(0,0,0,.3),0 0 35px rgba(0,210,255,.07)}.square-checkout:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#39f0c2,#39c8ff,transparent);opacity:.85}.payment-summary{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid rgba(142,229,255,.12)}.payment-summary small{display:block;color:#8fa8b7;margin-bottom:5px}.payment-summary strong{display:block}.payment-total{font-size:clamp(1.45rem,3vw,2.2rem);color:#baffdf;text-shadow:0 0 18px rgba(52,255,181,.18)}.sandbox-badge{margin:0 0 18px;padding:9px 12px;border:1px solid rgba(255,199,74,.4);background:rgba(255,174,0,.08);color:#ffd37a;border-radius:10px;font-size:.78rem;font-weight:800;letter-spacing:.06em}.square-secure{display:flex;align-items:center;gap:8px;color:#9bb4c2;font-size:.86rem;margin-bottom:10px}.square-secure:before{content:"▣";color:#45efba}#square-card{min-height:92px;margin:8px 0 14px;padding:12px;border-radius:12px;background:rgba(2,10,17,.62);border:1px solid rgba(81,196,232,.18)}.square-pay-button{width:100%;justify-content:center;margin-top:8px}.payment-success{text-align:center;padding:42px 28px;border:1px solid rgba(64,245,181,.28);border-radius:20px;background:linear-gradient(145deg,rgba(7,25,35,.96),rgba(3,12,20,.96));box-shadow:0 25px 80px rgba(0,0,0,.35)}.payment-check{width:68px;height:68px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;font-size:2rem;color:#071811;background:#52f0b5;box-shadow:0 0 35px rgba(82,240,181,.3)}.client-payment-action{margin:16px 0}.square-client-pay{box-shadow:0 0 22px rgba(50,220,186,.12)}.payment-paid-chip{display:inline-flex;padding:8px 12px;border-radius:999px;border:1px solid rgba(76,239,178,.35);background:rgba(47,213,155,.1);color:#91ffd6;font-weight:800;font-size:.84rem}.square-admin{max-width:780px}.square-admin input[type=password]{font-family:monospace}.finance-table{overflow-x:auto}@media(max-width:640px){.payment-summary{grid-template-columns:1fr}.payment-summary>div:last-child{text-align:left}}

/* Permiso individual de pagos en línea por cliente */
.customer-payment-permission{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0;padding:8px 11px;border:1px solid rgba(98,196,220,.28);border-radius:10px;background:rgba(4,18,28,.62);color:#a9bdc7;font-size:.82rem}.customer-payment-permission.is-enabled{border-color:rgba(164,255,66,.48);box-shadow:inset 0 0 18px rgba(91,224,180,.06);color:#dfffd0}.customer-payment-permission .text-button{margin:0;white-space:nowrap}

/* Control futurista de estado para Pagos en línea */
.square-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid rgba(109,220,255,.12)}
.square-admin-head h3{margin:0 0 4px}.square-admin-head .hint{margin:0}
.square-status-control{position:relative;display:inline-flex;align-items:center;gap:11px;min-width:205px;padding:10px 15px 10px 13px;border-radius:12px;border:1px solid;cursor:pointer;text-align:left;font-family:inherit;transition:transform .2s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease,color .25s ease;overflow:hidden}
.square-status-control:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.08) 48%,transparent 72%);transform:translateX(-125%);transition:transform .5s ease}
.square-status-control:hover{transform:translateY(-2px)}.square-status-control:hover:before{transform:translateX(125%)}
.square-status-dot{position:relative;z-index:1;width:12px;height:12px;flex:0 0 12px;border-radius:50%;box-shadow:0 0 0 4px rgba(255,255,255,.035)}
.square-status-copy{position:relative;z-index:1;display:grid;gap:3px}.square-status-copy small{font-size:.62rem;line-height:1;text-transform:uppercase;letter-spacing:.14em;opacity:.72}.square-status-copy strong{font:800 .74rem/1.1 Orbitron,system-ui,sans-serif;letter-spacing:.08em}
.square-status-control.is-enabled{color:#baffdf;border-color:rgba(60,246,184,.62);background:linear-gradient(135deg,rgba(15,64,58,.76),rgba(5,25,34,.96));box-shadow:inset 0 0 18px rgba(50,242,181,.08),0 0 18px rgba(50,242,181,.12)}
.square-status-control.is-enabled .square-status-dot{background:#55f2ba;box-shadow:0 0 0 4px rgba(85,242,186,.08),0 0 16px rgba(85,242,186,.85)}
.square-status-control.is-enabled:hover{border-color:#68ffd0;box-shadow:inset 0 0 22px rgba(50,242,181,.13),0 0 25px rgba(50,242,181,.2)}
.square-status-control.is-disabled{color:#ffd7a0;border-color:rgba(255,173,70,.42);background:linear-gradient(135deg,rgba(67,38,22,.62),rgba(8,20,29,.96));box-shadow:inset 0 0 16px rgba(255,158,53,.055),0 0 14px rgba(255,158,53,.07)}
.square-status-control.is-disabled .square-status-dot{background:#ff9f43;box-shadow:0 0 0 4px rgba(255,159,67,.07),0 0 12px rgba(255,159,67,.55)}
.square-status-control.is-disabled:hover{border-color:rgba(255,190,96,.72);box-shadow:inset 0 0 20px rgba(255,158,53,.09),0 0 20px rgba(255,158,53,.12)}
@media(max-width:680px){.square-admin-head{align-items:stretch;flex-direction:column}.square-status-control{width:100%;justify-content:center;text-align:center}}

/* Flujo revisión, abonos y liquidación SMDTRONIC */
.smd-intervention-panel{margin:16px 0;padding:16px;border:1px solid rgba(68,224,255,.28);border-radius:16px;background:linear-gradient(145deg,rgba(5,18,32,.94),rgba(8,29,43,.72));box-shadow:inset 0 0 28px rgba(0,210,255,.045)}
.smd-mini-action{border:1px solid rgba(79,231,255,.65);border-radius:999px;background:rgba(5,21,32,.92);color:#c8f8ff;padding:8px 13px;font:700 11px/1.1 inherit;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 16px rgba(31,215,255,.13);cursor:pointer}.smd-mini-action:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 0 22px rgba(31,215,255,.28)}.smd-mini-action:disabled{opacity:.38;cursor:not-allowed}
.review-price-line,.deposit-control,.client-finance-summary{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.review-price-line{padding:12px;margin:10px 0;border:1px solid rgba(112,255,182,.18);border-radius:12px}.review-price-line>div{display:grid;gap:3px}.review-price-edit{min-width:180px;margin-left:auto}.deposit-control{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}#deposit-summary{margin-left:auto;color:#aef8cf;font-weight:700}.client-finance-summary{margin-top:12px;padding:12px;border:1px solid rgba(62,220,255,.18);border-radius:12px;background:rgba(5,22,34,.55)}.client-finance-summary span{flex:1 1 150px}.client-finance-summary strong{display:block;color:#c8fbff;margin-top:3px}.vehicle-request-box{border:1px solid rgba(70,220,255,.2);border-radius:14px;padding:14px;margin:12px 0}.is-secondary{opacity:.82}
@media(max-width:640px){.review-price-edit{margin-left:0;width:100%}#deposit-summary{margin-left:0;width:100%}.smd-intervention-panel .row{align-items:flex-start}}

/* Revisión compacta, Promo Revisión y evidencias SMDTRONIC */
.smd-hidden{display:none!important}.promo-review-chip{display:inline-flex;align-items:center;width:max-content;margin-top:5px;padding:4px 8px;border:1px solid rgba(127,255,128,.48);border-radius:999px;background:rgba(51,118,74,.18);color:#aaffba;font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 14px rgba(90,255,130,.10)}.promo-review-line strong{color:#aaffba}.smd-evidence-actions{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0}.smd-evidence-actions .is-visible{border-color:rgba(112,255,163,.72);color:#baffd0;box-shadow:0 0 18px rgba(83,255,142,.18)}.smd-evidence-actions .is-private{border-color:rgba(255,190,91,.42);color:#ffdca6}.evidence-upload-zone{max-height:180px;opacity:1;overflow:hidden;transition:max-height .25s ease,opacity .2s ease,margin .25s ease}.evidence-upload-zone.is-collapsed{max-height:0;opacity:0;margin:0;pointer-events:none}.review-evidence{margin-top:14px;border-color:rgba(77,228,255,.26)}
/* Historial financiero claro: revisión/trabajo, pago y saldo */
.work-history-card{display:block;width:100%;text-align:left}.work-history-head{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;margin-bottom:.45rem}.work-history-head strong{margin-right:auto}.work-type-chip,.payment-state-chip{display:inline-flex;align-items:center;border-radius:999px;padding:.28rem .62rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;border:1px solid rgba(84,226,255,.45);background:rgba(5,22,35,.78);box-shadow:0 0 12px rgba(58,210,255,.10)}.work-type-chip{color:#7cecff}.payment-state-chip.is-paid{color:#b7ff72;border-color:rgba(161,255,81,.58);box-shadow:0 0 14px rgba(139,255,69,.18)}.payment-state-chip.is-pending{color:#ffd36e;border-color:rgba(255,190,62,.58);box-shadow:0 0 14px rgba(255,180,50,.13)}.work-money-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:.5rem;margin:.65rem 0}.work-money-grid span{padding:.48rem .58rem;border:1px solid rgba(91,213,255,.16);border-radius:9px;background:rgba(5,18,29,.45);font-size:.78rem}.work-money-grid strong{display:block;color:#eefcff;margin-top:.12rem}@media(max-width:900px){.work-money-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media(max-width:520px){.work-money-grid{grid-template-columns:1fr}}

/* Estado financiero inequívoco en Historial de trabajos */
.payment-state-chip.is-pending::before{content:'$';display:inline-grid;place-items:center;width:1.25em;height:1.25em;margin-right:.38em;border:1px solid currentColor;border-radius:50%;font-size:.78em;font-weight:900;box-shadow:0 0 9px currentColor}
.payment-state-chip.is-paid::before{content:'✓';margin-right:.35em;font-weight:900}
/* Estado de revisión y acceso directo a pago desde Mi cuenta */
.status.reviewed{border-color:rgba(91,238,219,.58);background:rgba(14,64,72,.52);color:#a9fff2;box-shadow:0 0 18px rgba(45,230,210,.16)}
.status.payment-pending{border-color:rgba(178,255,62,.58);background:rgba(43,68,18,.5);color:#d9ff91;box-shadow:0 0 20px rgba(169,255,56,.18)}
.appointment-payment-button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:16px 0 4px;padding:12px 14px;border:1px solid rgba(169,255,56,.55);border-radius:14px;background:linear-gradient(135deg,rgba(11,31,39,.96),rgba(26,48,22,.82));color:#efffd2;text-decoration:none;box-shadow:inset 0 0 22px rgba(65,231,209,.06),0 0 18px rgba(169,255,56,.10);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.appointment-payment-button:hover{transform:translateY(-2px);border-color:#b9ff50;box-shadow:inset 0 0 25px rgba(65,231,209,.08),0 0 26px rgba(169,255,56,.2)}
.appointment-payment-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid #b8ff4b;background:rgba(169,255,56,.09);color:#cfff74;font:800 19px/1 Orbitron,system-ui;box-shadow:0 0 15px rgba(169,255,56,.18)}
.appointment-payment-button strong,.appointment-payment-button small{display:block}.appointment-payment-button strong{font-family:Orbitron,system-ui;letter-spacing:.08em;font-size:.82rem}.appointment-payment-button small{margin-top:3px;color:#a9c8c8}.appointment-payment-arrow{font-size:1.35rem;color:#68eadb}


/* Gestión BD — acceso exclusivo del Administrador principal */
.account-db-button{position:relative;overflow:hidden}.account-db-button:after{content:"";position:absolute;inset:auto -25% -70% 20%;height:70px;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 24%,transparent),transparent 70%);pointer-events:none}.account-db-gear{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--primary) 65%,var(--border));border-radius:9px;color:var(--primary);font-size:20px;box-shadow:inset 0 0 12px color-mix(in srgb,var(--primary) 10%,transparent),0 0 14px color-mix(in srgb,var(--primary) 12%,transparent)}
.db-management{display:grid;gap:18px}.db-security-badge{display:flex;align-items:center;gap:13px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--primary) 38%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--card) 90%,var(--primary) 10%)}.db-security-badge>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;border:1px solid var(--primary);color:var(--primary);font-size:25px;box-shadow:0 0 18px color-mix(in srgb,var(--primary) 18%,transparent)}.db-security-badge div{display:grid;gap:2px}.db-security-badge small{color:#0fffff}.db-center{display:flex;justify-content:center;margin-top:18px}.db-unlock{min-width:210px}.db-tools{display:grid;gap:14px}.db-tools[hidden]{display:none!important}.db-authorized{justify-self:center;padding:8px 14px;border:1px solid rgba(65,255,155,.45);border-radius:999px;color:#73ffb2;background:rgba(30,140,90,.10);font-size:.76rem;font-weight:800;letter-spacing:.09em;box-shadow:0 0 20px rgba(45,255,150,.08)}.db-danger-action{width:100%;display:grid;grid-template-columns:48px 1fr;column-gap:14px;align-items:center;text-align:left;padding:16px;border:1px solid rgba(255,75,95,.45);border-radius:15px;background:linear-gradient(135deg,rgba(90,12,25,.22),rgba(10,18,28,.92));color:var(--foreground);cursor:pointer;transition:.18s ease}.db-danger-action:hover{transform:translateY(-2px);border-color:#ff5b70;box-shadow:0 14px 32px rgba(255,45,75,.12)}.db-danger-action:disabled{opacity:.5;cursor:wait}.db-danger-action strong{color:#ff7888;letter-spacing:.06em}.db-danger-action small{grid-column:2;color:var(--muted);line-height:1.45;margin-top:3px}.db-action-icon{grid-row:1/3;display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,90,110,.5);border-radius:13px;color:#ff7183;font-size:22px;font-weight:900;background:rgba(255,50,75,.07)}.db-clients-action{border-color:rgba(255,176,55,.45);background:linear-gradient(135deg,rgba(90,55,8,.18),rgba(10,18,28,.92))}.db-clients-action strong,.db-clients-action .db-action-icon{color:#ffc469}.db-clients-action .db-action-icon{border-color:rgba(255,190,80,.5)}.db-warning{margin:2px 0 0;padding:12px 14px;border-left:3px solid #ff6b78;background:rgba(255,60,75,.06);color:var(--muted);font-size:.86rem;line-height:1.5}


/* SMDTRONIC — mejoras de agenda, Gestión BD y estado financiero */
.calendar-cell.today{position:relative;border-color:#65f4ff!important;box-shadow:inset 0 0 0 1px rgba(101,244,255,.72),0 0 22px rgba(65,225,255,.20)!important;background:linear-gradient(145deg,rgba(20,78,94,.34),rgba(8,18,29,.96))!important}
.calendar-cell.today>strong{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#06131b;background:#70f5ff;box-shadow:0 0 18px rgba(90,240,255,.58)}
.booking-calendar-popup .calendar-day.today{position:relative;border-color:#69efff!important;box-shadow:0 0 0 2px rgba(70,230,255,.20),0 0 16px rgba(70,230,255,.24)!important}
.booking-calendar-popup .calendar-day.today:after{content:'HOY';position:absolute;bottom:1px;font-size:.43rem;line-height:1;font-weight:900;letter-spacing:.05em;color:#8ff7ff}
.db-danger-action small{color:#d5e4ec!important;opacity:1!important;font-size:.84rem!important;line-height:1.5!important}
.db-confirm-modal{display:grid;justify-items:center;gap:14px;text-align:center;padding:6px 2px 2px}.db-confirm-icon{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;border:1px solid rgba(255,105,120,.68);background:radial-gradient(circle,rgba(255,75,95,.20),rgba(80,8,20,.12));color:#ff8795;font-size:31px;box-shadow:0 0 30px rgba(255,65,90,.18)}.db-confirm-modal h3{margin:0;color:#ff9aa5;letter-spacing:.05em}.db-confirm-copy{max-width:590px;margin:0;color:#dce9ef;line-height:1.65}.db-confirm-warning{width:100%;padding:13px 15px;border:1px solid rgba(255,174,60,.42);border-radius:13px;background:rgba(255,155,35,.07);color:#ffd18a;line-height:1.5}.db-confirm-modal .field{width:100%;text-align:left}.db-confirm-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;width:100%;margin-top:4px}.db-confirm-execute{border-color:#ff6175!important;box-shadow:0 0 22px rgba(255,65,90,.14)!important}
.client-tech-report .payment-paid-chip{display:table!important;margin:20px 0 4px auto!important;clear:both;padding:8px 14px!important}
.client-finance-summary+.payment-paid-chip{margin-top:22px!important}

/* Pila segura de modales SMDTRONIC */
.db-confirm-layer{position:absolute;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:rgba(1,7,15,.88);backdrop-filter:blur(9px);border-radius:20px}.db-confirm-dialog{position:relative;width:min(620px,calc(100vw - 42px));max-height:calc(100vh - 64px);overflow:auto;padding:28px;border:1px solid rgba(255,93,112,.58);border-radius:20px;background:linear-gradient(145deg,#0b1725,#070d16);box-shadow:0 30px 100px rgba(0,0,0,.72),0 0 38px rgba(255,65,90,.15);animation:calendarModalIn .16s ease}.db-confirm-x{position:absolute;right:14px;top:12px;width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#eefaff;font-size:30px;line-height:1;cursor:pointer;z-index:2}.db-confirm-x:hover,.db-confirm-x:focus-visible{border-color:#ff687b;color:#ff8796;outline:none}.db-confirm-dialog .db-confirm-modal{padding-top:4px}.db-confirm-dialog .db-confirm-modal h3{padding-right:46px}@media(max-width:560px){.db-confirm-layer{padding:8px;border-radius:18px}.db-confirm-dialog{width:100%;max-height:92vh;padding:22px 16px;border-radius:18px}}


/* Backend · Citas en tarjetas SMDTRONIC */
.admin-appointment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:18px}
.admin-appointment-card{appearance:none;width:100%;text-align:left;color:inherit;border:1px solid rgba(74,224,255,.18);border-radius:18px;padding:18px;background:linear-gradient(145deg,rgba(10,25,39,.96),rgba(5,13,23,.98));box-shadow:0 16px 38px rgba(0,0,0,.22);cursor:pointer;transition:.18s ease;position:relative;overflow:hidden}
.admin-appointment-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(#50eaff,#41ffb2);opacity:.72}
.admin-appointment-card:hover,.admin-appointment-card:focus-visible{transform:translateY(-2px);border-color:rgba(80,234,255,.55);box-shadow:0 20px 46px rgba(0,0,0,.32),0 0 24px rgba(52,219,255,.08);outline:none}
.admin-appointment-card-top,.admin-appointment-card-main,.admin-appointment-card-info{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-appointment-card-main{justify-content:flex-start;margin:17px 0}.admin-appointment-card-main h3{margin:0 0 4px}.admin-appointment-card-main p,.admin-appointment-reason{margin:0;color:var(--muted,#9fb0c3)}
.admin-appointment-icon{display:grid;place-items:center;min-width:44px;height:44px;border-radius:13px;color:#55e9ff;background:rgba(57,219,255,.08);border:1px solid rgba(75,227,255,.2)}
.admin-appointment-date{font-size:.84rem;color:#b9cad9}.admin-appointment-date strong{display:block;color:#f2fbff;font-size:1rem;text-align:right;margin-top:2px}.admin-appointment-card-info{justify-content:flex-start;gap:28px;padding:12px 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.admin-appointment-card-info span{display:grid;gap:3px}.admin-appointment-card-info small{color:#738ba0}.admin-appointment-card-info strong{font-size:.9rem}.admin-appointment-reason{padding:13px 0 5px;font-size:.9rem}.admin-appointment-open{display:block;text-align:right;color:#58e9ff;font-size:.82rem;font-weight:700;letter-spacing:.04em;margin-top:9px}.admin-appointment-open b{font-size:1.1rem;margin-left:5px}
.appointment-editor-layer{position:fixed;inset:0;z-index:25000;display:grid;place-items:center;padding:20px;background:rgba(0,6,13,.82);backdrop-filter:blur(8px)}.appointment-editor-dialog{position:relative;width:min(760px,96vw);max-height:92vh;overflow:auto;border:1px solid rgba(72,228,255,.42);border-radius:22px;padding:26px;background:linear-gradient(145deg,#0b1928,#07101b);box-shadow:0 34px 110px rgba(0,0,0,.68),0 0 34px rgba(47,220,255,.11)}.appointment-editor-x{position:absolute;right:14px;top:12px;width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#effcff;font-size:30px;line-height:1;cursor:pointer}.appointment-editor-head{display:flex;justify-content:space-between;gap:18px;padding-right:50px}.appointment-editor-head h2{margin:.2rem 0}.appointment-editor-head p{margin:0;color:#9eb2c4}.appointment-editor-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.appointment-editor-summary span{padding:12px;border-radius:13px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);display:grid;gap:4px}.appointment-editor-summary small{color:#7891a6}.appointment-note-field{grid-column:1/-1}.appointment-editor-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.appointment-modal-open{overflow:hidden}
@media(max-width:650px){.admin-appointment-grid{grid-template-columns:1fr}.appointment-editor-layer{padding:8px}.appointment-editor-dialog{padding:22px 15px}.appointment-editor-head{display:block}.appointment-editor-head .status{display:inline-flex;margin-top:10px}.appointment-editor-summary{grid-template-columns:1fr}.appointment-editor-actions{flex-direction:column-reverse}.appointment-editor-actions .button{width:100%}}

/* Citas sincronizadas · estado compacto · paginación */
.appointment-modal-status{display:inline-flex!important;flex:0 0 auto!important;width:auto!important;max-width:max-content!important;align-self:flex-start;white-space:nowrap;padding:.42rem .72rem!important}
.appointment-lock-notice,.appointment-paid-notice{margin:0 0 18px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,113,126,.34);background:rgba(255,74,96,.075)}
.appointment-lock-notice strong{color:#ff93a0}.appointment-lock-notice p,.appointment-paid-notice p{margin:.35rem 0 0;color:#b9c9d7;line-height:1.55}
.appointment-paid-notice{border-color:rgba(70,255,177,.3);background:rgba(45,255,169,.065)}.appointment-paid-notice strong{color:#69ffc1}
.smd-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 4px;padding:12px 14px;border:1px solid rgba(74,224,255,.14);border-radius:16px;background:rgba(5,15,25,.72)}
.pagination-count{color:#7f9bb0;font-size:.82rem}.pagination-controls{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.pagination-nav,.pagination-page{appearance:none;border:1px solid rgba(82,225,255,.2);background:rgba(21,43,59,.72);color:#ccebf3;border-radius:10px;min-height:36px;padding:0 11px;cursor:pointer;font:inherit;font-size:.82rem;transition:.15s ease}
.pagination-page{min-width:36px;padding:0}.pagination-page.is-active{border-color:#54e8ff;color:#fff;background:rgba(41,201,236,.18);box-shadow:0 0 17px rgba(45,219,255,.14)}.pagination-nav:hover:not(:disabled),.pagination-page:hover{border-color:#54e8ff}.pagination-nav:disabled{opacity:.35;cursor:not-allowed}.pagination-gap{color:#658096;padding:0 2px}
@media(max-width:620px){.smd-pagination{align-items:stretch;flex-direction:column}.pagination-controls{justify-content:center}.pagination-count{text-align:center}.appointment-modal-status{margin-top:10px}}


/* Trabajos y costos · tarjetas, paginación e informes */
.admin-work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:16px;margin-top:18px}.admin-work-card{position:relative;overflow:hidden;padding:18px;border:1px solid rgba(76,226,255,.19);border-radius:18px;background:linear-gradient(145deg,rgba(9,24,38,.97),rgba(5,13,23,.99));box-shadow:0 15px 38px rgba(0,0,0,.22);cursor:pointer;transition:.18s ease}.admin-work-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(#53eaff,#55ffb8)}.admin-work-card:hover,.admin-work-card:focus-visible{transform:translateY(-2px);border-color:rgba(83,234,255,.52);box-shadow:0 20px 48px rgba(0,0,0,.32),0 0 25px rgba(48,220,255,.08);outline:none}.admin-work-head,.admin-work-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-work-card h3{margin:15px 0 4px}.admin-work-card>p{margin:0;color:var(--muted)}.admin-work-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.admin-work-summary span{display:grid;gap:3px;padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(255,255,255,.025)}.admin-work-summary small{color:#7890a4}.admin-work-summary strong{font-size:.86rem}.admin-work-excerpt{min-height:2.7em;line-height:1.45}.admin-work-actions{margin-top:14px;padding-top:13px;border-top:1px solid rgba(255,255,255,.065)}.admin-work-actions>span{color:#59e9ff;font-size:.8rem;font-weight:700}.technical-evidence .evidence-admin-item{position:relative}.technical-evidence .evidence-admin-item:after,.client-evidence-grid a:after{content:"SMDTRONIC";position:absolute;right:9px;top:9px;padding:3px 6px;border-radius:5px;background:rgba(0,0,0,.18);color:rgba(255,255,255,.32);font-size:.55rem;font-weight:900;letter-spacing:.08em;pointer-events:none}.client-evidence-grid a{position:relative}
@media(max-width:680px){.admin-work-grid{grid-template-columns:1fr}.admin-work-summary{grid-template-columns:1fr 1fr}.admin-work-actions{align-items:flex-end;flex-direction:column-reverse}.admin-work-actions .smd-mini-action{width:100%}}

/* Selector de informe técnico SMDTRONIC */
.technical-report-choice-layer{position:fixed;inset:0;z-index:45000;display:grid;place-items:center;padding:18px;background:rgba(1,8,15,.84);backdrop-filter:blur(9px)}
.technical-report-choice{position:relative;width:min(590px,calc(100vw - 32px));padding:28px;border:1px solid rgba(38,211,255,.72);border-radius:20px;background:linear-gradient(145deg,#0a1724,#06101a);box-shadow:0 28px 90px rgba(0,0,0,.7),0 0 34px rgba(28,196,255,.14);color:#eafaff}
.technical-report-choice:before{content:"";position:absolute;inset:7px;pointer-events:none;border:1px solid rgba(66,225,255,.18);border-radius:15px;clip-path:polygon(0 0,94% 0,100% 14%,100% 100%,6% 100%,0 86%)}
.technical-report-choice-x{position:absolute;z-index:2;right:13px;top:12px;width:40px;height:40px;border-radius:12px;border:1px solid rgba(126,234,255,.28);background:#0b2130;color:#dffaff;font-size:27px;cursor:pointer}
.technical-report-choice-icon{width:54px;height:54px;display:grid;place-items:center;border:1px solid #29d5ff;border-radius:50%;font-size:25px;color:#74e8ff;box-shadow:0 0 22px rgba(30,207,255,.18)}
.technical-report-choice h3{position:relative;margin:8px 0;font-size:1.35rem;color:#fff}.technical-report-choice-copy{position:relative;color:#a9c5d3;line-height:1.55;max-width:500px}
.technical-report-choice-actions{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:20px 0 16px}
.technical-report-choice-card{min-height:112px;padding:17px;text-align:left;border:1px solid rgba(73,216,255,.36);border-radius:15px;background:linear-gradient(145deg,rgba(10,39,56,.9),rgba(5,23,35,.95));color:#eaffff;cursor:pointer;transition:.2s}
.technical-report-choice-card strong,.technical-report-choice-card span{display:block}.technical-report-choice-card strong{font-size:1rem;color:#7cecff;margin-bottom:8px}.technical-report-choice-card span{font-size:.82rem;color:#a9c5d3;line-height:1.4}.technical-report-choice-card:hover,.technical-report-choice-card:focus-visible{transform:translateY(-2px);border-color:#6deaff;box-shadow:0 0 25px rgba(40,209,255,.16);outline:none}.technical-report-choice-card.is-primary{border-color:rgba(104,255,190,.42)}.technical-report-choice-card.is-primary strong{color:#7affbf}.technical-report-choice-cancel{position:relative;margin-left:auto;display:block}
@media(max-width:560px){.technical-report-choice{padding:23px 17px}.technical-report-choice-actions{grid-template-columns:1fr}.technical-report-choice-card{min-height:90px}}


/* Selector de acción del informe técnico */
.smd-report-choice-layer{position:fixed;inset:0;z-index:45000;display:grid;place-items:center;padding:18px;background:rgba(1,7,15,.78);backdrop-filter:blur(8px)}
.smd-report-choice{position:relative;width:min(470px,calc(100vw - 32px));padding:26px;border:1px solid rgba(38,210,255,.62);border-radius:18px;background:linear-gradient(145deg,#0b1725,#07111c);box-shadow:0 28px 90px rgba(0,0,0,.72),0 0 35px rgba(25,198,255,.14);color:#eefaff;text-align:center}
.smd-report-choice:before{content:"";position:absolute;inset:7px;pointer-events:none;border:1px solid rgba(42,207,255,.17);border-radius:13px}
.smd-report-choice-x{position:absolute;right:13px;top:11px;z-index:2;width:40px;height:40px;border:1px solid rgba(255,255,255,.15);border-radius:11px;background:rgba(255,255,255,.04);color:#eafaff;font-size:28px;line-height:1;cursor:pointer}
.smd-report-choice-icon{font-size:34px;color:#37d9ff;text-shadow:0 0 18px rgba(55,217,255,.45)}
.smd-report-choice h3{margin:7px 0 20px;font-size:22px;letter-spacing:.3px}
.smd-report-choice-actions{display:grid;grid-template-columns:1fr 1fr;gap:13px;position:relative;z-index:1}
.smd-report-choice-btn{min-height:118px;border-radius:14px;border:1px solid rgba(50,214,255,.55);background:linear-gradient(155deg,rgba(5,73,112,.96),rgba(5,35,57,.98));color:#fff;cursor:pointer;display:grid;place-content:center;gap:8px;box-shadow:inset 0 0 24px rgba(34,199,255,.08)}
.smd-report-choice-btn.download{border-color:rgba(63,230,152,.58);background:linear-gradient(155deg,rgba(7,102,66,.96),rgba(4,50,38,.98))}
.smd-report-choice-btn span{font-size:34px;line-height:1}.smd-report-choice-btn strong{font-size:16px}.smd-report-choice-btn:hover{transform:translateY(-2px);filter:brightness(1.12)}
.smd-report-choice-cancel{position:relative;z-index:1;margin-top:16px;padding:9px 18px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:#263744;color:#fff;cursor:pointer}
@media(max-width:520px){.smd-report-choice-actions{grid-template-columns:1fr}.smd-report-choice-btn{min-height:92px}}
/* Selección múltiple de galería + confirmación propia SMDTRONIC */
.gallery-selection-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:14px 0 4px}.gallery-select{display:flex!important;align-items:center;gap:7px;margin:0 0 8px!important;color:var(--admin-cyan);font-weight:700}.gallery-select input{width:18px;height:18px}.button.danger{border-color:rgba(255,83,100,.65);background:linear-gradient(135deg,rgba(125,21,36,.92),rgba(74,11,24,.96));color:#fff}.button.danger:disabled{opacity:.45;cursor:not-allowed}.smd-confirm-layer{position:fixed;inset:0;z-index:30000;display:grid;place-items:center;padding:20px;background:rgba(1,7,14,.82);backdrop-filter:blur(10px)}.smd-confirm-card{width:min(480px,94vw);padding:24px;border:1px solid rgba(255,83,100,.55);border-radius:20px;background:linear-gradient(145deg,#081a2b,#0b2132);box-shadow:0 24px 80px rgba(0,0,0,.65),0 0 30px rgba(255,83,100,.12);display:grid;grid-template-columns:auto 1fr;gap:16px}.smd-confirm-card h3{margin:0 0 8px}.smd-confirm-card p{margin:0;color:var(--admin-muted);line-height:1.55}.smd-confirm-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,83,100,.7);color:#ff7b88;font-size:24px;font-weight:900}.smd-confirm-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.watermark-config{margin:18px 0;padding:16px;border:1px solid var(--admin-line);border-radius:14px;background:var(--admin-surface-2)}


/* SMDTRONIC · marca de agua dinámica del frontend */
.smd-watermarked-media{position:relative;display:block;overflow:hidden}
.smd-watermarked-media>img:not(.smd-live-watermark){display:block;width:100%;height:100%;object-fit:cover}
.smd-live-watermark{position:absolute!important;z-index:3!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:46%!important;height:auto!important;aspect-ratio:1/1;object-fit:cover!important;opacity:var(--smd-wm-opacity,.2)!important;pointer-events:none!important;filter:none!important}
.smd-live-watermark.is-round{border-radius:50%!important;clip-path:circle(49% at 50% 50%)}
.smd-live-watermark.is-square{border-radius:0!important;clip-path:none}
.service-image-wrap{width:100%;height:auto}
.service-image-wrap .service-image{height:auto}
.service-gallery-main-wrap{width:100%;height:100%}
.service-gallery-main-wrap .service-gallery-main{width:100%;height:100%;object-fit:contain}
.service-gallery-thumb-wrap{width:100%;height:100%;border-radius:inherit}

/* SMDTRONIC · barra de selección múltiple de galería */
.smd-gallery-bulkbar{position:relative;padding:14px 16px!important;border:1px solid rgba(22,217,244,.34);border-radius:16px;background:linear-gradient(135deg,rgba(5,18,32,.96),rgba(7,31,48,.92));box-shadow:inset 0 0 24px rgba(22,217,244,.05),0 10px 28px rgba(0,0,0,.22);overflow:hidden}
.smd-gallery-bulkbar:before{content:"";position:absolute;left:0;top:0;width:54px;height:2px;background:var(--admin-cyan);box-shadow:0 0 12px var(--admin-cyan)}
.smd-select-all{display:flex!important;align-items:center;gap:11px;cursor:pointer;margin:0!important;color:#e8fbff}
.smd-select-all input{position:absolute;opacity:0;pointer-events:none}
.smd-check-ui{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(22,217,244,.55);border-radius:9px;background:#061421;color:transparent;box-shadow:inset 0 0 12px rgba(22,217,244,.08);transition:.18s ease}
.smd-select-all input:checked+.smd-check-ui{color:#031019;background:var(--admin-cyan);box-shadow:0 0 18px rgba(22,217,244,.42)}
.smd-select-all strong,.smd-danger-action strong{display:block;font-family:var(--brand-font,Orbitron),system-ui,sans-serif;font-size:.78rem;letter-spacing:.045em;text-transform:uppercase}
.smd-select-all small,.smd-danger-action small{display:block;margin-top:3px;color:var(--admin-muted);font-size:.7rem;font-weight:500}
.smd-danger-action{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 14px;border:1px solid rgba(255,86,110,.62);border-radius:12px;background:linear-gradient(135deg,rgba(111,17,35,.88),rgba(57,8,20,.96));color:#fff;cursor:pointer;box-shadow:inset 0 0 18px rgba(255,77,105,.07),0 0 0 rgba(255,77,105,0);transition:.2s ease;text-align:left}
.smd-danger-action:hover:not(:disabled){transform:translateY(-1px);border-color:#ff6b83;box-shadow:0 0 20px rgba(255,77,105,.18)}
.smd-danger-action:disabled{opacity:.38;filter:saturate(.55);cursor:not-allowed}
.smd-danger-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,126,145,.72);font-size:1.35rem;line-height:1;color:#ff9aaa}
@media(max-width:650px){.smd-gallery-bulkbar{align-items:stretch}.smd-danger-action{width:100%}}

/* Tarjetas administrativas SMDTRONIC: vehículos, productos y costos */
.smd-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:0 0 22px}.smd-section-head h2,.smd-section-head h3{margin:.18rem 0}.smd-section-head .muted{max-width:720px;margin:.35rem 0 0}.smd-section-actions{display:flex;align-items:stretch;justify-content:flex-end;gap:12px;flex-wrap:wrap}.smd-config-card{min-width:285px;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;text-align:left;padding:13px 15px;border:1px solid rgba(59,225,255,.32);border-radius:16px;background:linear-gradient(135deg,rgba(8,27,45,.96),rgba(5,15,28,.96));color:#e9fbff;cursor:pointer;box-shadow:inset 0 0 24px rgba(35,222,255,.025),0 0 24px rgba(24,211,244,.05);transition:.18s ease}.smd-config-card:hover{transform:translateY(-2px);border-color:#55eaff;box-shadow:0 0 26px rgba(34,220,255,.12)}.smd-config-icon{display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(77,230,255,.35);border-radius:13px;background:rgba(23,207,235,.08);color:#67efff;font-size:27px}.smd-config-card span:nth-child(2){display:grid;gap:3px}.smd-config-card small{color:#7f9caf}.smd-config-card b{color:#69eaff;font-size:.78rem}.catalog-status-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 24px;padding:16px 18px;border:1px solid rgba(80,218,255,.14);border-radius:16px;background:rgba(5,17,30,.68)}.catalog-status-card>div{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.catalog-status-card small{grid-column:2;color:#8099ab;margin-top:3px}.status-dot{width:10px;height:10px;border-radius:50%;background:#ffb45f;box-shadow:0 0 13px rgba(255,169,78,.4)}.status-dot.is-on{background:#62f4b1;box-shadow:0 0 14px rgba(71,255,176,.5)}
.smd-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}.smd-data-card{position:relative;min-width:0;overflow:hidden;border:1px solid rgba(70,221,255,.17);border-radius:17px;background:linear-gradient(150deg,rgba(8,24,39,.97),rgba(4,13,24,.98));box-shadow:inset 0 0 30px rgba(34,211,238,.018);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.smd-data-card:before{content:"";position:absolute;left:0;top:0;width:46px;height:2px;background:#51eaff;box-shadow:0 0 12px rgba(64,231,255,.55)}.smd-data-card:hover,.smd-data-card:focus-visible{transform:translateY(-3px);border-color:rgba(76,231,255,.55);box-shadow:0 12px 34px rgba(0,0,0,.22),0 0 24px rgba(37,220,255,.08);outline:none}.smd-data-card-body{padding:17px;display:flex;flex-direction:column;min-height:245px}.smd-data-card .eyebrow{font-size:.68rem;margin:0 0 7px;color:#65e9ff}.smd-data-card h3{margin:0 0 7px;font-size:1.05rem;line-height:1.25;overflow-wrap:anywhere}.smd-data-card h3 span{color:#b5cad7;font-weight:600}.smd-card-copy{color:#8fa6b7;font-size:.78rem;line-height:1.5;margin:11px 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.smd-card-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.smd-card-metrics span{min-width:0;padding:9px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.025)}.smd-card-metrics small{display:block;color:#6f899d;font-size:.64rem;text-transform:uppercase;letter-spacing:.05em}.smd-card-metrics strong{display:block;margin-top:3px;color:#d9f8ff;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smd-card-link{margin-top:13px;color:#58e9ff;font-size:.76rem;font-weight:800;letter-spacing:.02em}.vehicle-card-symbol{height:62px;display:grid;place-items:center;border-bottom:1px solid rgba(66,220,255,.1);background:radial-gradient(circle at 50% 100%,rgba(37,216,245,.12),transparent 65%);color:#63eaff;font-size:31px}.vehicle-year{color:#91a9b9;font-size:.78rem;margin:0 0 9px}.vehicle-filter-bar{max-width:520px;margin-bottom:18px}.vehicle-filter-bar .field{margin-bottom:0}.product-admin-media{position:relative;height:150px;background:#03101b;overflow:hidden}.product-admin-media img{width:100%;height:100%;object-fit:cover;display:block}.product-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#4fdff3;font-family:var(--brand-font);font-size:2rem;letter-spacing:.12em;background:radial-gradient(circle,rgba(44,222,248,.11),transparent 68%)}.smd-card-status{position:absolute;right:10px;top:10px;padding:5px 9px;border:1px solid rgba(255,184,96,.38);border-radius:999px;background:rgba(20,15,8,.78);color:#ffc47c;font-size:.65rem;font-weight:800;text-transform:uppercase}.smd-card-status.is-live{border-color:rgba(80,241,177,.4);background:rgba(4,29,21,.8);color:#79f3bf}.product-admin-card .smd-data-card-body{min-height:235px}.smd-modal-intro{display:flex;gap:14px;align-items:flex-start;margin:0 0 20px;padding:15px;border:1px solid rgba(66,222,255,.16);border-radius:14px;background:rgba(21,196,225,.035)}.smd-modal-intro>span{display:grid;place-items:center;flex:0 0 45px;height:45px;border:1px solid rgba(79,229,255,.28);border-radius:12px;color:#5fe9ff;font-size:25px}.smd-modal-intro p{margin:5px 0 0;color:#8da6b7}.smd-modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:18px}.smd-danger-button{border-color:rgba(255,92,112,.55)!important;background:rgba(104,19,31,.28)!important;color:#ff9aa7!important}.smd-danger-button:hover{border-color:#ff7184!important;background:rgba(132,23,38,.42)!important}.smd-delete-confirm{text-align:center;display:grid;justify-items:center;gap:12px;padding:8px}.smd-delete-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;border:1px solid rgba(255,92,112,.55);background:rgba(118,19,34,.17);color:#ff8c9b;font-size:36px}.smd-delete-confirm h3{margin:0}.smd-delete-confirm p{max-width:520px;color:#9db0be;line-height:1.55;margin:0}
@media(max-width:1180px){.smd-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.smd-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.smd-section-head{align-items:flex-start;flex-direction:column}.smd-section-actions{width:100%;justify-content:flex-start}}@media(max-width:620px){.smd-card-grid{grid-template-columns:1fr}.smd-config-card{min-width:0;width:100%}.catalog-status-card{align-items:stretch;flex-direction:column}.smd-section-actions{flex-direction:column}.smd-section-actions>.button{width:100%}}

/* SMDTRONIC · clientes, páginas/eventos y galería modal estable */
.customer-card-symbol,.page-card-symbol{height:72px;display:grid;place-items:center;border-bottom:1px solid rgba(66,220,255,.1);background:radial-gradient(circle at 50% 100%,rgba(37,216,245,.14),transparent 67%);color:#63eaff;font-family:var(--brand-font,Orbitron),system-ui,sans-serif;font-size:1.7rem;font-weight:800;text-shadow:0 0 18px rgba(65,232,255,.28)}
.customer-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.customer-card-actions .text-button{font-size:.72rem}.customer-admin-card .smd-data-card-body,.page-admin-card .smd-data-card-body{min-height:250px}.page-admin-media{height:128px;overflow:hidden;background:#03101b;border-bottom:1px solid rgba(66,220,255,.1)}.page-admin-media img{display:block;width:100%;height:100%;object-fit:cover}.smd-content-filters{margin:0 0 18px}
/* El contenedor mantiene la misma geometría aunque cambie la proporción de la fotografía. */
.service-gallery-dialog{width:min(1040px,96vw)!important;height:min(860px,92vh)!important;max-height:min(860px,92vh)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
.service-gallery-heading{flex:0 0 auto}.service-gallery-view{flex:1 1 auto!important;min-height:0!important;height:auto!important}.service-gallery-main-wrap{position:absolute!important;inset:0!important;display:grid!important;place-items:center!important}.service-gallery-main-wrap .service-gallery-main,.service-gallery-main{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}.service-gallery-thumbs{flex:0 0 auto}.service-gallery-footer{flex:0 0 auto}
@media(max-width:700px){.service-gallery-dialog{width:calc(100vw - 20px)!important;height:calc(100dvh - 20px)!important;max-height:calc(100dvh - 20px)!important}.service-gallery-view{min-height:0!important}}

/* SMDTRONIC · galería frontend: fotografía completa sin deformar ni recortar */
.service-gallery-main-wrap{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:8px!important;
  box-sizing:border-box!important;
}
.service-gallery-main-wrap .service-gallery-main{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  flex:none!important;
  border-radius:0!important;
  clip-path:none!important;
}


/* SMDTRONIC · zoom de galería: conserva proporción y no altera el modal base */
.service-gallery-main{cursor:zoom-in;transition:filter .18s ease,transform .18s ease;touch-action:manipulation}
.service-gallery-main:focus-visible{outline:2px solid #62ecff;outline-offset:4px}
.service-gallery-main-wrap.is-zoomed{position:fixed!important;inset:14px!important;z-index:45000!important;width:auto!important;height:auto!important;padding:48px!important;background:rgba(1,8,15,.96)!important;backdrop-filter:blur(14px);border:1px solid rgba(85,232,255,.38);border-radius:18px!important;box-shadow:0 30px 100px rgba(0,0,0,.78),0 0 38px rgba(53,224,255,.10);overflow:hidden!important}
.service-gallery-main-wrap.is-zoomed:after{content:"Clic para volver";position:absolute;right:18px;bottom:16px;padding:7px 11px;border:1px solid rgba(91,231,255,.32);border-radius:999px;background:rgba(4,20,31,.86);color:#b8f7ff;font-size:.72rem;letter-spacing:.04em;pointer-events:none}
.service-gallery-main-wrap.is-zoomed .service-gallery-main{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;cursor:zoom-out}
.service-gallery-main-wrap.is-zoomed .smd-live-watermark{max-width:320px!important}
.gallery-zoom-active .service-gallery-nav{opacity:.18;pointer-events:none}
@media(max-width:700px){.service-gallery-main-wrap.is-zoomed{inset:6px!important;padding:26px 10px 42px!important;border-radius:13px!important}.service-gallery-main-wrap.is-zoomed:after{right:10px;bottom:9px}}

/* Marca de agua dinámica del slider principal: comparte configuración con la galería */
.hero-slider .hero-watermarked-media{position:relative;display:block;width:100%;height:470px;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border)}
.hero-slider .hero-watermarked-media>img:not(.smd-live-watermark){display:block;width:100%;height:100%;object-fit:cover;border:0!important;border-radius:0!important}
.hero-slider .hero-watermarked-media .smd-live-watermark{width:46%!important;height:auto!important;aspect-ratio:1/1;object-fit:cover!important;opacity:var(--smd-wm-opacity,.2)!important}
@media(max-width:700px){.hero-slider .hero-watermarked-media{height:320px}}


/* SMDTRONIC PRODUCCION · marca de agua robusta e independiente del slider */
.smd-slider-watermark{position:absolute!important;z-index:6!important;left:50%!important;top:235px!important;transform:translate(-50%,-50%)!important;width:min(46%,360px)!important;aspect-ratio:1/1!important;background-image:var(--smd-slider-wm-image)!important;background-position:center!important;background-repeat:no-repeat!important;background-size:cover!important;opacity:var(--smd-slider-wm-opacity,.2)!important;pointer-events:none!important}
.smd-slider-watermark.is-round{border-radius:50%!important;clip-path:circle(49% at 50% 50%)}
.smd-slider-watermark.is-square{border-radius:0!important;clip-path:none}
@media(max-width:700px){.smd-slider-watermark{top:160px!important;width:min(46%,250px)!important}}

/* Informe técnico del cliente: se desbloquea exclusivamente después de validación de pago en servidor. */
.client-paid-actions{margin-top:18px}.client-report-unlocked{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;margin-top:14px;padding:18px;border:1px solid rgba(91,232,218,.38);border-radius:18px;background:linear-gradient(135deg,rgba(7,28,39,.96),rgba(6,18,31,.94));box-shadow:0 18px 48px rgba(0,0,0,.24),0 0 28px rgba(91,232,218,.08)}.client-report-unlocked:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#5ce8dc,#91ffd6,transparent)}.client-report-unlocked-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;border:1px solid rgba(145,255,214,.42);background:rgba(68,237,190,.09);color:#91ffd6;font-size:1.35rem;box-shadow:inset 0 0 18px rgba(91,232,218,.08)}.client-report-unlocked small{display:block;margin-bottom:3px;color:#71e9d9;font-weight:800;letter-spacing:.12em;font-size:.68rem}.client-report-unlocked strong{display:block;color:#effffc;font-size:1.02rem}.client-report-unlocked span{display:block;margin-top:4px;color:#9eb7c3;font-size:.82rem}.client-report-buttons{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.client-report-button{box-shadow:0 0 22px rgba(68,237,190,.15)}@media(max-width:760px){.client-report-unlocked{grid-template-columns:auto 1fr}.client-report-buttons{grid-column:1/-1;justify-content:stretch}.client-report-buttons .button{flex:1;justify-content:center;text-align:center}}

/* Traducciones: navegación compacta por secciones */
.translation-section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:18px 0 8px}
.translation-section-card{min-height:118px;padding:16px;border:1px solid var(--admin-border,var(--border));border-radius:16px;background:linear-gradient(145deg,#0c2235,#0a1928);color:#fff;text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:7px;box-shadow:0 10px 26px rgba(0,0,0,.16);transition:.18s ease}
.translation-section-card:nth-child(5n+1){--translation-tile:var(--admin-blue,#169cff)}.translation-section-card:nth-child(5n+2){--translation-tile:var(--admin-violet,#9b4dff)}.translation-section-card:nth-child(5n+3){--translation-tile:var(--admin-green,#18d889)}.translation-section-card:nth-child(5n+4){--translation-tile:var(--admin-orange,#ff9d2e)}.translation-section-card:nth-child(5n+5){--translation-tile:var(--admin-cyan,#16d9f4)}
.translation-section-card{border-color:color-mix(in srgb,var(--translation-tile) 76%,#17364e);background:radial-gradient(circle at 50% 10%,color-mix(in srgb,var(--translation-tile) 18%,transparent),transparent 46%),linear-gradient(145deg,#0c2235,#0a1928)}
.translation-section-card:hover,.translation-section-card:focus-visible{transform:translateY(-3px);border-color:var(--translation-tile);box-shadow:0 0 0 1px color-mix(in srgb,var(--translation-tile) 45%,transparent),0 16px 34px rgba(0,0,0,.22)}
.translation-section-card strong{font-size:1.02rem}.translation-section-card small{color:#b9cddd;line-height:1.4}
.translation-section-panel{margin-top:16px}.translation-section-panel[hidden]{display:none!important}.translation-subhead{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--admin-border,var(--border))}.translation-subhead h4,.translation-subhead p{margin-top:0}
@media(max-width:640px){.translation-section-grid{grid-template-columns:1fr 1fr;gap:10px}.translation-section-card{min-height:105px;padding:12px}.translation-section-card small{font-size:.78rem}.translation-subhead{flex-direction:column}}

.report-access-toggle.is-enabled{box-shadow:0 0 0 1px rgba(80,255,190,.35),0 0 18px rgba(80,255,190,.12)}
.report-access-toggle.is-disabled{opacity:.82}
.client-report-locked{margin-top:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.12);border-radius:14px;display:grid;gap:5px}
.client-report-locked strong{letter-spacing:.02em}
.client-report-locked span{font-size:.9rem;opacity:.72}

/* SMDTRONIC V10 - Acciones compactas y uniformes en Taller > Trabajos y costos */
.admin-work-actions [data-work-pdf],
.admin-work-actions .report-access-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:154px;
  min-width:154px;
  max-width:154px;
  min-height:34px;
  padding:6px 10px!important;
  border-radius:10px!important;
  font-size:.72rem!important;
  line-height:1.1!important;
  font-weight:800!important;
  letter-spacing:.015em;
  text-align:center;
  white-space:normal;
  box-sizing:border-box;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.admin-work-actions [data-work-pdf]:hover,
.admin-work-actions .report-access-toggle:hover{
  transform:translateY(-1px);
}
.admin-work-actions [data-work-pdf]{
  border-color:rgba(92,232,220,.45)!important;
  background:linear-gradient(145deg,rgba(9,40,51,.88),rgba(6,25,36,.92))!important;
  box-shadow:0 5px 14px rgba(0,0,0,.16),inset 0 0 0 1px rgba(126,255,236,.04)!important;
}
.admin-work-actions .report-access-toggle.is-enabled{
  border-color:rgba(80,255,190,.42)!important;
  box-shadow:0 5px 14px rgba(0,0,0,.15),0 0 12px rgba(80,255,190,.08)!important;
}
.admin-work-actions .report-access-toggle.is-disabled{
  border-color:rgba(151,174,190,.3)!important;
  background:linear-gradient(145deg,rgba(26,38,49,.82),rgba(14,25,35,.9))!important;
  opacity:.9;
}
@media (max-width:560px){
  .admin-work-actions [data-work-pdf],
  .admin-work-actions .report-access-toggle{
    width:140px;
    min-width:140px;
    max-width:140px;
    min-height:32px;
    padding:5px 8px!important;
    font-size:.68rem!important;
  }
}

/* SMDTRONIC · estados visuales semánticos en Trabajos y costos */
.repair-state.state-pending,.repair-state.state-warning{border-color:rgba(255,190,72,.65);color:#ffd27a;background:rgba(166,104,15,.18);box-shadow:0 0 16px rgba(255,176,45,.10)}
.repair-state.state-success{border-color:rgba(155,255,95,.42);color:#b9ff8d;background:rgba(93,173,56,.09)}
.repair-state.state-cancelled{border-color:rgba(255,105,105,.58);color:#ffc0c0;background:rgba(155,37,44,.20);box-shadow:0 0 16px rgba(255,75,75,.10)}

/* Pago pendiente = advertencia, no éxito */
.status.payment-pending{border-color:rgba(255,190,72,.68)!important;background:rgba(166,104,15,.20)!important;color:#ffd27a!important;box-shadow:0 0 20px rgba(255,176,45,.13)!important}
.appointment-payment-button{border-color:rgba(255,190,72,.58)!important;background:linear-gradient(135deg,rgba(11,31,39,.96),rgba(75,49,12,.82))!important;color:#ffe6ad!important;box-shadow:inset 0 0 22px rgba(255,190,72,.05),0 0 18px rgba(255,176,45,.10)!important}
.appointment-payment-button:hover{border-color:#ffd27a!important;box-shadow:inset 0 0 25px rgba(255,190,72,.07),0 0 26px rgba(255,176,45,.18)!important}
.appointment-payment-icon{border-color:#ffc04d!important;background:rgba(166,104,15,.18)!important;color:#ffd27a!important;box-shadow:0 0 15px rgba(255,176,45,.16)!important}
.appointment-payment-arrow{color:#ffd27a!important}

/* Evidencias del informe: siempre cuadradas; independientes de la forma del logo/marca de agua */
.evidence-admin-item img,.client-evidence-grid img{aspect-ratio:1/1!important;height:auto!important;object-fit:cover!important;border-radius:9px!important}

/* Evidencias V20: rectangulares, proporción original intacta */
.evidence-admin-item img,.client-evidence-grid img{aspect-ratio:16/10!important;width:100%!important;height:auto!important;object-fit:contain!important;border-radius:9px!important;background:rgba(4,18,28,.72)!important}

/* V21 marca de agua configurable: cuadrada o rectangular */
.smd-live-watermark.is-rectangular{width:34%!important;height:auto!important;aspect-ratio:auto!important;border-radius:8px!important;object-fit:contain!important}.smd-slider-watermark.is-rectangular{width:34%!important;aspect-ratio:16/9!important;border-radius:8px!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important}


/* SMDTRONIC · origen del servicio y forma de pago */
.smd-payment-method{margin-top:18px;padding:18px;border:1px solid rgba(80,170,255,.28);border-radius:18px;background:linear-gradient(135deg,rgba(10,27,48,.92),rgba(15,47,70,.78));box-shadow:0 14px 32px rgba(0,0,0,.16)}
.smd-payment-method-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.smd-payment-method-head strong{display:block;font-size:1.02rem}.service-origin-chip{padding:7px 11px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.08em;border:1px solid rgba(255,255,255,.18)}.service-origin-chip.is-online{background:rgba(44,190,140,.16)}.service-origin-chip.is-backend{background:rgba(65,145,255,.16)}
.payment-method-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.payment-method-btn{min-height:78px;border:1px solid rgba(120,190,255,.28);border-radius:15px;background:rgba(5,18,32,.72);color:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:.18s ease}.payment-method-btn span{font-size:1.35rem}.payment-method-btn:hover:not(:disabled){transform:translateY(-2px);border-color:rgba(120,210,255,.72)}.payment-method-btn.is-selected{outline:2px solid rgba(80,210,255,.85);background:rgba(30,120,170,.24);box-shadow:0 0 22px rgba(50,180,255,.13)}.payment-method-btn.is-online.is-selected{outline-color:rgba(65,220,155,.9);background:rgba(30,150,105,.2)}.payment-method-btn:disabled{opacity:.38;cursor:not-allowed}.admin-payment-override{margin-top:10px;padding:9px 11px;border-left:3px solid rgba(255,190,65,.85);background:rgba(255,180,40,.08)}
@media(max-width:680px){.payment-method-buttons{grid-template-columns:1fr}.smd-payment-method-head{align-items:flex-start;flex-direction:column}}
/* SMDTRONIC modal polish: access requests and destructive database confirmations */
.system-message-card{overflow:hidden;isolation:isolate}.system-message-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,var(--admin-cyan,#17d9ff),transparent);opacity:.9}.system-message-layer[data-type="success"] .system-message-card::before{background:linear-gradient(90deg,transparent,var(--admin-green,#18d889),transparent)}.system-message-layer[data-type="error"] .system-message-card::before,.system-message-layer[data-type="warning"] .system-message-card::before{background:linear-gradient(90deg,transparent,#ff6175,transparent)}
.db-confirm-dialog{isolation:isolate;overflow:auto}.db-confirm-dialog::before{content:"";position:absolute;left:10%;right:10%;top:0;height:2px;background:linear-gradient(90deg,transparent,#ff6175,transparent);box-shadow:0 0 22px rgba(255,97,117,.55)}

/* Public privacy and data-deletion pages */
.legal-page{max-width:920px;margin-inline:auto}.legal-document{display:grid;gap:1.35rem}.legal-document .legal-intro{font-size:1.05rem;line-height:1.75}.legal-document section{padding-top:.2rem}.legal-document section+section{border-top:1px solid var(--border);padding-top:1.25rem}.legal-document h2{font-size:1.15rem;margin:0 0 .55rem}.legal-document p{line-height:1.72;margin:0;color:var(--muted-foreground)}
/* Bandeja: acciones destructivas compactas */
.mail-delete-compact{display:inline-flex;align-items:center;gap:.4rem;width:auto!important;min-width:0!important;padding:.42rem .72rem!important;border:1px solid rgba(255,90,90,.32);border-radius:999px;background:rgba(255,70,70,.08);color:inherit;font:inherit;font-size:.82rem;font-weight:700;line-height:1;cursor:pointer;box-shadow:none;transition:.18s ease}
.mail-delete-compact:hover:not(:disabled){transform:translateY(-1px);background:rgba(255,70,70,.14);border-color:rgba(255,90,90,.55)}
.mail-delete-compact:disabled{opacity:.38;cursor:not-allowed}

/* SMD V8 — controles compactos reales de eliminación en Bandeja */
.admin-workspace .mail-delete-compact,
.admin-workspace button.mail-delete-compact,
#mail-area .mail-delete-compact{
  display:inline-flex!important;flex:0 0 auto!important;width:auto!important;max-width:max-content!important;min-width:0!important;
  padding:.38rem .62rem!important;margin:0!important;gap:.32rem!important;border:1px solid rgba(255,91,108,.42)!important;
  border-radius:10px!important;background:linear-gradient(145deg,rgba(65,14,24,.88),rgba(32,9,17,.92))!important;
  color:#ffb7c0!important;font-size:.76rem!important;font-weight:800!important;line-height:1!important;letter-spacing:.01em!important;
  box-shadow:inset 0 0 12px rgba(255,70,90,.05),0 0 10px rgba(255,70,90,.08)!important;
}
.admin-workspace .mail-delete-compact:hover:not(:disabled){border-color:#ff6576!important;color:#fff!important;transform:translateY(-1px);}
#mail-reader .row:has(.mail-delete-compact){align-items:center!important;}
/* V10 · Usuarios con presentación visual consistente con Citas */
.admin-user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:18px}
.admin-user-card{position:relative;overflow:hidden;border:1px solid rgba(74,224,255,.18);border-radius:18px;padding:18px;background:linear-gradient(145deg,rgba(10,25,39,.96),rgba(5,13,23,.98));box-shadow:0 16px 38px rgba(0,0,0,.22);transition:.18s ease}
.admin-user-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(#50eaff,#41ffb2);opacity:.72}
.admin-user-card:hover{transform:translateY(-2px);border-color:rgba(80,234,255,.45);box-shadow:0 20px 46px rgba(0,0,0,.30),0 0 24px rgba(52,219,255,.07)}
.admin-user-card-top,.admin-user-card-main,.admin-user-card-info{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-user-date{font-size:.78rem;color:#8ea5b9;text-align:right}.admin-user-date small,.admin-user-date strong{display:block}.admin-user-date strong{margin-top:3px;color:#eaf8ff;font-size:.9rem}
.admin-user-card-main{justify-content:flex-start;margin:17px 0}.admin-user-card-main .user-avatar{width:48px;height:48px;flex-basis:48px}.admin-user-card-main h3{margin:0 0 4px;font-size:1.03rem}.admin-user-card-main p{margin:0;color:var(--muted,#9fb0c3);overflow-wrap:anywhere}
.admin-user-card-info{justify-content:flex-start;gap:28px;padding:12px 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.admin-user-card-info span{display:grid;gap:3px;min-width:0}.admin-user-card-info small{color:#738ba0}.admin-user-card-info strong{font-size:.9rem;overflow-wrap:anywhere}
.admin-user-location{margin:12px 0 4px;color:#9fb0c3;font-size:.88rem}.admin-user-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}.admin-user-actions .button,.admin-user-actions .text-button{width:auto!important;margin:0!important}.admin-user-actions .user-edit-button{padding:.48rem .72rem!important}
@media(max-width:650px){.admin-user-grid{grid-template-columns:1fr}.admin-user-card-info{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-user-actions{justify-content:flex-start}}
/* SMDTRONIC V12: chat cliente/personal */
.smd-chat-card{display:grid;gap:14px}.smd-chat-stream{height:min(58vh,520px);min-height:340px;overflow-y:auto;overflow-x:hidden;padding:12px;display:flex;flex-direction:column;gap:10px;background:rgba(3,12,28,.28);border-radius:16px;scroll-behavior:auto}.smd-chat-bubble{max-width:78%;padding:11px 14px;border:1px solid rgba(120,190,255,.18);border-radius:16px;background:rgba(255,255,255,.055)}.smd-chat-bubble.mine{align-self:flex-end;background:rgba(0,145,255,.16)}.smd-chat-bubble.theirs{align-self:flex-start}.smd-chat-bubble small{display:block;opacity:.62;margin-top:5px;font-size:.72rem}.smd-chat-compose{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.smd-chat-compose textarea{resize:vertical;min-height:54px}.smd-chat-admin{display:grid;grid-template-columns:minmax(250px,34%) 1fr;gap:16px}.smd-chat-person{width:100%;display:grid;grid-template-columns:1fr auto;text-align:left;gap:4px 10px;padding:12px;border:0;border-bottom:1px solid rgba(255,255,255,.08);background:transparent;color:inherit;cursor:pointer}.smd-chat-person span{grid-column:1/-1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.7}.smd-chat-person b{border-radius:999px;padding:2px 7px;background:currentColor}.smd-chat-person.active{background:rgba(0,145,255,.12)}@media(max-width:760px){.smd-chat-admin{grid-template-columns:1fr}.smd-chat-compose{grid-template-columns:1fr}.smd-chat-bubble{max-width:90%}}
/* SMDTRONIC V12.8: badges y aviso visual del chat */
.smd-chat-menu-link{position:relative;display:inline-flex!important;align-items:center;gap:6px}.smd-chat-menu-icon{font-size:.85em;filter:drop-shadow(0 0 6px rgba(23,217,255,.9))}.smd-chat-nav-badge{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;font-size:11px;font-weight:900;line-height:1;background:linear-gradient(135deg,#ff3f9d,#9b4dff 48%,#17d9ff);color:#fff;border:1px solid rgba(255,255,255,.75);box-shadow:0 0 8px rgba(255,63,157,.7),0 0 18px rgba(23,217,255,.45);animation:smdChatPulse 1.8s ease-in-out infinite}.smd-chat-nav-badge[hidden]{display:none!important}.admin-nav button[data-section="chat"]{position:relative}.admin-nav button[data-section="chat"] .smd-chat-nav-badge{position:absolute;right:9px;top:8px}.admin-nav button[data-section="chat"].has-chat-unread{border-color:rgba(23,217,255,.55);box-shadow:inset 0 0 22px rgba(23,217,255,.07)}.smd-chat-person b{display:grid;place-items:center;min-width:24px;height:24px;padding:0 7px;color:#fff!important;background:linear-gradient(135deg,#ff3f9d,#9b4dff 48%,#17d9ff)!important;border:1px solid rgba(255,255,255,.65);box-shadow:0 0 10px rgba(155,77,255,.5),0 0 18px rgba(23,217,255,.25)}@keyframes smdChatPulse{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.08);filter:brightness(1.2)}}
/* V12.9: chat notification badge visible in frontend and backend */
.site-header .smd-chat-menu-link{position:relative;padding-right:12px}
.site-header .smd-chat-menu-link .smd-chat-nav-badge{position:absolute;top:-9px;right:-10px;z-index:30}

/* V28.1: acciones al pulsar directamente un día del calendario */
.calendar-day-actions{display:flex;gap:.65rem;align-items:center;justify-content:flex-end;flex-wrap:wrap}
@media (max-width:640px){.calendar-day-actions{width:100%;justify-content:stretch}.calendar-day-actions .button{flex:1 1 10rem}}

/* V28.2 appointment freshness */
.smd-new{border-color:#00eaff!important;color:#00eaff!important}.smd-new-card{box-shadow:0 0 0 1px #00eaff,0 0 18px rgba(0,234,255,.22)}.smd-age{display:inline-block;padding:.2rem .5rem;border-radius:999px;font-size:.68rem;border:1px solid currentColor}.smd-age-today,.smd-date-today{color:#38e889}.smd-age-yesterday,.smd-date-yesterday{color:#4ea1ff}.smd-age-late2,.smd-date-late2{color:#ffbf3f}.smd-age-late3,.smd-date-late3{color:#ff5252}.smd-age-late4,.smd-date-late4{color:#ff3bd5}

/* SMDTRONIC V28.19 · Chat humano flotante */
.smd-human-chat{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:9500;font-family:inherit}
.smd-human-chat-button{display:flex;align-items:center;gap:11px;border:1px solid color-mix(in srgb,var(--primary,#18c8ff) 68%,transparent);border-radius:22px;padding:11px 15px;background:linear-gradient(145deg,rgba(5,22,36,.96),rgba(7,39,58,.97));color:#eefcff;box-shadow:0 0 0 1px rgba(45,224,255,.08),0 10px 36px rgba(0,0,0,.42),0 0 25px rgba(28,205,255,.17);cursor:pointer;max-width:310px;animation:smdHumanChatFloat 3.2s ease-in-out infinite}
.smd-human-chat-button:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(0,0,0,.5),0 0 30px rgba(28,205,255,.3)}
.smd-human-chat-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(18,202,255,.12);color:#52e7ff;border:1px solid rgba(82,231,255,.38);flex:none}
.smd-human-chat-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15}.smd-human-chat-copy strong{font-size:14px;letter-spacing:.02em}.smd-human-chat-copy small{font-size:10.5px;color:#a9c7d3;margin-top:5px;display:flex;align-items:center;gap:6px}
.smd-human-chat-copy i{width:8px;height:8px;border-radius:50%;display:inline-block}.smd-human-chat-copy i.online{background:#31e981;box-shadow:0 0 9px #31e981}.smd-human-chat-copy i.offline{background:#ffb020;box-shadow:0 0 8px #ffb020}
.smd-human-chat-panel{position:absolute;right:0;bottom:72px;width:min(380px,calc(100vw - 28px));max-height:min(590px,72vh);overflow:auto;border-radius:20px;border:1px solid rgba(61,218,255,.34);background:linear-gradient(160deg,rgba(4,17,29,.985),rgba(7,30,45,.99));box-shadow:0 20px 65px rgba(0,0,0,.58),0 0 30px rgba(23,196,255,.13);padding:14px;color:#effcff}
.smd-human-chat-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:11px;border-bottom:1px solid rgba(115,220,255,.15)}.smd-human-chat-head div{display:flex;flex-direction:column}.smd-human-chat-head small{font-size:9px;letter-spacing:.14em;color:#51e7ff;margin-top:4px}.smd-human-chat-head button{border:0;background:rgba(255,255,255,.06);color:#dffaff;width:30px;height:30px;border-radius:50%;font-size:20px;cursor:pointer}
.smd-human-chat-intro{font-size:12px;line-height:1.5;color:#b9d1da;background:rgba(37,211,255,.06);border-left:2px solid #3fe0ff;padding:10px 11px;border-radius:9px}.smd-human-chat-guest-form{display:grid;gap:9px}.smd-human-chat-guest-form input,.smd-human-chat-compose textarea{width:100%;box-sizing:border-box;border:1px solid rgba(96,213,246,.22);border-radius:12px;background:rgba(0,8,16,.72);color:#effcff;padding:11px;outline:none}.smd-human-chat-messages{display:flex;flex-direction:column;gap:8px;min-height:150px;max-height:320px;overflow:auto;padding:12px 2px}.smd-human-msg{display:flex}.smd-human-msg span{max-width:84%;padding:9px 11px;border-radius:13px;font-size:12px;line-height:1.45}.smd-human-msg.guest{justify-content:flex-end}.smd-human-msg.guest span{background:rgba(28,192,238,.18);border:1px solid rgba(65,218,255,.25)}.smd-human-msg.staff span{background:rgba(82,255,172,.1);border:1px solid rgba(82,255,172,.2)}.smd-human-chat-compose{display:flex;gap:8px;align-items:flex-end}.smd-human-chat-compose textarea{resize:none;min-height:46px}.smd-human-chat-compose .button{flex:none}
@keyframes smdHumanChatFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(max-width:640px){.smd-human-chat{right:12px;bottom:14px}.smd-human-chat-button{padding:9px;border-radius:50%;width:54px;height:54px;justify-content:center}.smd-human-chat-copy{display:none}.smd-human-chat-icon{width:38px;height:38px}.smd-human-chat-panel{bottom:64px;right:0;max-height:68vh}}
@media(prefers-reduced-motion:reduce){.smd-human-chat-button{animation:none}}


/* V28.24 · Cuenta / autenticación: acciones secundarias claras y responsive */
.auth-page .customer-auth-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px 14px;
    margin:8px 0 18px;
}
.auth-page .customer-auth-actions .text-button,
.auth-page .staff-access-actions .text-button{
    margin:0;
    min-height:42px;
    padding:9px 13px;
    border:1px solid color-mix(in srgb,var(--primary) 42%,transparent);
    border-radius:10px;
    line-height:1.25;
    text-align:center;
    text-decoration:none;
    transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.auth-page .customer-auth-actions .text-button:hover,
.auth-page .customer-auth-actions .text-button:focus-visible,
.auth-page .staff-access-actions .text-button:hover,
.auth-page .staff-access-actions .text-button:focus-visible{
    background:color-mix(in srgb,var(--primary) 9%,transparent);
    border-color:var(--primary);
}
.auth-page .customer-auth-actions .text-button:active,
.auth-page .staff-access-actions .text-button:active{transform:translateY(1px)}
.auth-page .auth-action-divider{
    width:1px;height:24px;flex:0 0 1px;
    background:color-mix(in srgb,var(--border) 75%,transparent);
}
.auth-page .staff-access-title{margin:4px 0 8px}
.auth-page .staff-access-actions{margin-top:0;margin-bottom:2px}
.auth-page .panel hr{margin:12px 0 18px}
@media(max-width:520px){
    .auth-page .customer-auth-actions,
    .auth-page .staff-access-actions{
        display:grid;
        grid-template-columns:1fr;
        gap:8px;
    }
    .auth-page .customer-auth-actions .text-button,
    .auth-page .staff-access-actions .text-button{
        width:100%;
        text-align:center;
    }
    .auth-page .auth-action-divider{display:none}
}

/* V28.25 · Auditoría previa de inicialización */
.db-reset-audit{display:grid;gap:7px;margin:14px 0;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 50%,transparent);border-radius:12px;background:color-mix(in srgb,var(--primary) 6%,transparent)}
.db-reset-audit strong{color:var(--primary);letter-spacing:.06em}
.db-reset-audit span{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.db-reset-audit b{color:var(--foreground)}

/* V28.29 · Agenda viva: HOY + PRÓXIMA */
@keyframes smdTodayGlow{0%,100%{box-shadow:inset 0 0 0 1px rgba(101,244,255,.62),0 0 13px rgba(65,225,255,.18)}50%{box-shadow:inset 0 0 0 1px rgba(135,250,255,.92),0 0 30px rgba(65,225,255,.48)}}
@keyframes smdNextGlow{0%,100%{box-shadow:0 0 0 1px rgba(87,242,255,.58),0 0 12px rgba(54,225,255,.22)}50%{box-shadow:0 0 0 2px rgba(130,251,255,.95),0 0 34px rgba(54,225,255,.60)}}
.calendar-cell.today{animation:smdTodayGlow 2.4s ease-in-out infinite}
.smd-next-appointment{position:relative;border-color:#69f1ff!important;background:linear-gradient(135deg,rgba(21,104,119,.28),rgba(6,24,37,.96))!important;animation:smdNextGlow 1.75s ease-in-out infinite}
.smd-next-card{border-color:#69f1ff!important;background:linear-gradient(145deg,rgba(12,55,68,.72),rgba(8,22,34,.98))!important;animation:smdNextGlow 1.75s ease-in-out infinite}
.smd-next-label{display:inline-block;margin-left:.4rem;padding:.15rem .42rem;border:1px solid rgba(111,245,255,.8);border-radius:999px;color:#83f7ff;background:rgba(30,215,235,.10);font-size:.64rem;line-height:1.2;letter-spacing:.06em;white-space:nowrap}
@media (prefers-reduced-motion:reduce){.calendar-cell.today,.smd-next-appointment,.smd-next-card{animation:none!important}}

/* V28.30.4 · Chat Web Push: controles compactos y respiración visual */
.smd-human-chat-push{
    display:flex!important;
    width:max-content!important;
    max-width:100%;
    min-height:36px!important;
    margin:12px 2px 14px!important;
    padding:7px 13px!important;
    align-items:center;
    justify-content:center;
    gap:7px;
    border-radius:11px!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.15!important;
    letter-spacing:.01em;
    box-shadow:0 0 16px rgba(31,215,255,.08);
}
.smd-human-chat-compose{
    margin-top:2px;
    padding-top:2px;
}
.smd-human-chat-compose textarea{min-height:54px}
.smd-client-chat-actions{
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:12px!important;
    margin-top:14px!important;
    padding:0 10px!important;
}
.smd-client-chat-actions .button{
    width:auto!important;
    min-width:0!important;
    min-height:38px!important;
    margin:0!important;
    padding:8px 14px!important;
    border-radius:11px!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1.15!important;
    flex:0 0 auto!important;
}
#client-chat-push{
    border-color:rgba(42,221,255,.72)!important;
    box-shadow:0 0 18px rgba(42,221,255,.08)!important;
}
.smd-client-chat-actions a.button{margin-left:auto!important}
@media(max-width:640px){
    .smd-human-chat-push{margin:10px 2px 12px!important;padding:7px 11px!important;font-size:11.5px!important}
    .smd-client-chat-actions{padding:0 4px!important;gap:9px!important}
    .smd-client-chat-actions .button{padding:8px 11px!important;font-size:12px!important}
    .smd-client-chat-actions a.button{margin-left:0!important}
}

/* V28.33 · Acciones backend SMDTRONIC: botones separados, legibles y consistentes */
.evidence-admin-item .text-button{display:inline-flex;align-items:center;justify-content:center;min-width:92px;min-height:38px;margin:8px 8px 2px 0;padding:8px 14px!important;border:1px solid rgba(126,255,126,.55)!important;border-radius:10px!important;background:linear-gradient(145deg,rgba(75,145,35,.18),rgba(15,45,34,.72))!important;color:#baff8d!important;font-weight:800!important;text-decoration:none!important;line-height:1.1;cursor:pointer;transition:.18s ease}
.evidence-admin-item .text-button:hover{transform:translateY(-1px);border-color:rgba(164,255,92,.9)!important;box-shadow:0 0 16px rgba(136,255,70,.14)}
.evidence-admin-item .text-button.danger{border-color:rgba(255,100,110,.55)!important;background:linear-gradient(145deg,rgba(145,35,48,.20),rgba(48,15,25,.72))!important;color:#ff9ca5!important}
.evidence-admin-item .text-button.danger:hover{border-color:rgba(255,115,125,.9)!important;box-shadow:0 0 16px rgba(255,70,90,.13)}
.customer-card-actions,.report-actions,.smd-evidence-actions{gap:10px!important}
.customer-card-actions .text-button{margin:3px 0!important}
@media(max-width:520px){.evidence-admin-item .text-button{width:calc(50% - 6px);min-width:0;margin-right:6px}}

/* V28.34 · Evidencias del informe: operaciones parciales sin cerrar el editor */
.smd-evidence-inline-status{min-height:0;margin:0;color:var(--primary);font-weight:700;font-size:.92rem;opacity:0;transform:translateY(-3px);transition:.18s ease}
.smd-evidence-inline-status.is-visible{min-height:24px;margin:8px 0 2px;opacity:1;transform:none}
.smd-evidence-bulkbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:12px 0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--primary) 25%,transparent);border-radius:14px;background:color-mix(in srgb,var(--card) 90%,var(--primary) 10%)}
.smd-evidence-select{display:flex;align-items:center;gap:8px;margin:0 0 9px;font-size:.88rem;color:var(--muted)}
.smd-evidence-upload-now,.smd-evidence-delete-selected{margin-top:10px}
.smd-evidence-delete-selected:disabled{opacity:.45;cursor:not-allowed}

/* V28.37 · Checkboxes SMDTRONIC globales + galería de evidencias ordenada */
input[type="checkbox"]{
    -webkit-appearance:none!important;appearance:none!important;
    width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;
    margin:0!important;border:1px solid rgba(73,226,255,.62)!important;border-radius:7px!important;
    background:linear-gradient(145deg,rgba(5,18,31,.96),rgba(10,34,45,.92))!important;
    box-shadow:inset 0 0 0 2px rgba(0,0,0,.18),0 0 0 1px rgba(55,231,255,.05)!important;
    cursor:pointer!important;vertical-align:middle!important;flex:0 0 22px!important;
    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease!important;
}
input[type="checkbox"]:hover{border-color:#59efff!important;box-shadow:0 0 14px rgba(53,228,255,.24)!important;transform:translateY(-1px)}
input[type="checkbox"]:focus-visible{outline:2px solid rgba(170,255,48,.8)!important;outline-offset:3px!important}
input[type="checkbox"]:checked{
    border-color:#a9ff2f!important;
    background-color:#a9ff2f!important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%2307140b' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round' d='M5 12.5l4.2 4.2L19 7'/%3E%3C/svg%3E")!important;
    background-repeat:no-repeat!important;background-position:center!important;background-size:17px 17px!important;
    box-shadow:0 0 0 1px rgba(169,255,47,.2),0 0 16px rgba(169,255,47,.42)!important;
}
input[type="checkbox"]:disabled{opacity:.45!important;cursor:not-allowed!important;transform:none!important}
.check,.smd-evidence-select{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;line-height:1.3!important}

/* El selector de cada evidencia deja de flotar/centrarse sobre una tarjeta gigante. */
.technical-evidence .evidence-admin-grid{
    display:grid!important;grid-template-columns:repeat(auto-fill,minmax(260px,320px))!important;
    justify-content:start!important;align-items:start!important;gap:16px!important;margin-top:14px!important;
}
.technical-evidence .evidence-admin-item{
    width:100%!important;max-width:320px!important;padding:12px!important;border-radius:15px!important;
    border:1px solid rgba(72,226,255,.24)!important;
    background:linear-gradient(155deg,rgba(7,24,35,.96),rgba(4,14,24,.98))!important;
    box-shadow:0 12px 28px rgba(0,0,0,.20)!important;
}
.technical-evidence .evidence-admin-item .smd-evidence-select{
    width:max-content!important;max-width:100%!important;margin:0 0 10px!important;padding:7px 10px!important;
    border:1px solid rgba(73,226,255,.20)!important;border-radius:10px!important;
    background:rgba(35,211,235,.055)!important;color:#b9d5df!important;font-weight:700!important;
}
.technical-evidence .evidence-admin-item img{
    display:block!important;width:100%!important;height:185px!important;aspect-ratio:auto!important;
    object-fit:contain!important;border-radius:11px!important;border:1px solid rgba(86,226,239,.30)!important;
    background:rgba(2,11,18,.86)!important;
}
.technical-evidence .evidence-admin-item input[type="text"]{margin:10px 0 4px!important}
.technical-evidence .evidence-admin-item .check{margin:10px 0 4px!important}
.smd-evidence-bulkbar .check{margin:0!important;padding:7px 9px!important;border-radius:10px!important}
.smd-evidence-delete-selected{margin-top:0!important}
@media(max-width:620px){
  .technical-evidence .evidence-admin-grid{grid-template-columns:1fr!important}
  .technical-evidence .evidence-admin-item{max-width:none!important}
  .smd-evidence-bulkbar{align-items:stretch!important}
  .smd-evidence-delete-selected{width:100%!important}
}

/* V28.38 · Evidencias: acciones alineadas, persistencia visual y barra masiva sin solapes */
.technical-evidence .evidence-upload-zone:not(.is-collapsed){
    max-height:520px!important;
    overflow:visible!important;
    padding-bottom:6px!important;
}
.technical-evidence .smd-evidence-upload-now{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    width:auto!important;min-width:210px!important;min-height:42px!important;
    margin:10px 0 2px!important;padding:9px 16px!important;
    position:relative!important;inset:auto!important;
}
.technical-evidence .smd-evidence-bulkbar{
    display:grid!important;grid-template-columns:minmax(180px,1fr) auto!important;
    align-items:center!important;gap:16px!important;
    min-height:72px!important;margin:14px 0!important;padding:12px 16px!important;
    overflow:visible!important;
}
.technical-evidence .smd-evidence-bulkbar .check{
    width:max-content!important;max-width:100%!important;margin:0!important;
    align-self:center!important;justify-self:start!important;
}
.technical-evidence .smd-evidence-delete-selected{
    position:static!important;inset:auto!important;float:none!important;
    width:auto!important;min-width:210px!important;min-height:46px!important;
    margin:0!important;justify-self:end!important;align-self:center!important;
}
.technical-evidence .evidence-admin-item .smd-evidence-visible{
    display:flex!important;width:100%!important;min-height:38px!important;
    align-items:center!important;margin:8px 0 6px!important;
}
.technical-evidence .smd-evidence-card-actions{
    display:grid!important;grid-template-columns:1fr 1fr!important;
    align-items:center!important;gap:10px!important;width:100%!important;margin-top:6px!important;
}
.technical-evidence .smd-evidence-card-actions .text-button{
    display:flex!important;width:100%!important;min-width:0!important;min-height:36px!important;
    margin:0!important;padding:7px 10px!important;font-size:.84rem!important;
    position:static!important;inset:auto!important;float:none!important;
}
@media(max-width:620px){
  .technical-evidence .smd-evidence-bulkbar{grid-template-columns:1fr!important;gap:10px!important}
  .technical-evidence .smd-evidence-delete-selected{justify-self:stretch!important;width:100%!important;min-width:0!important}
  .technical-evidence .smd-evidence-upload-now{width:100%!important;min-width:0!important}
}

/* V28.43 · Espaciado uniforme entre opciones/checkboxes y acciones finales de todos los modales del backend */
.admin-editor-modal__body form > .check,
.admin-editor-modal__body form > .smd-check-row{
    margin-top:16px!important;
    margin-bottom:18px!important;
}
.admin-editor-modal__body form > button[type="submit"],
.admin-editor-modal__body form > .button[type="submit"],
.admin-editor-modal__body form > .smd-modal-actions,
.admin-editor-modal__body form > .row:last-child{
    margin-top:18px!important;
}
.admin-editor-modal__body form > .check + button[type="submit"],
.admin-editor-modal__body form > .check + .button[type="submit"]{
    margin-left:0!important;
    margin-top:6px!important;
    display:flex!important;
}
@media (max-width:620px){
  .admin-editor-modal__body form > button[type="submit"],
  .admin-editor-modal__body form > .button[type="submit"]{margin-top:16px!important}
}

/* V28.44 · Evidencias: acciones generales, selección solo al eliminar */
.smd-evidence-global-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:14px 0 10px;padding-top:4px}
.smd-evidence-global-actions .button{min-width:118px;min-height:40px;margin:0!important}
.smd-evidence-bulkbar.is-hidden,.smd-evidence-select.is-hidden{display:none!important}
.smd-evidence-delete-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.smd-evidence-delete-actions .button{margin:0!important;min-height:42px}
.smd-evidence-delete-mode.is-active{box-shadow:0 0 18px rgba(255,82,96,.18)}
.technical-evidence .evidence-admin-item .smd-evidence-select{margin:0 0 10px!important}
.technical-evidence .evidence-admin-item img.smd-file-missing{min-height:120px;opacity:.35;border-style:dashed!important}
@media(max-width:620px){.smd-evidence-global-actions,.smd-evidence-delete-actions{width:100%}.smd-evidence-global-actions .button,.smd-evidence-delete-actions .button{flex:1;min-width:0}.smd-evidence-delete-actions{flex-wrap:wrap}}

/* V28.45 · Modales: checkbox/opción y acción final siempre en filas separadas */
.admin-editor-modal__body form > .check,
.admin-editor-modal__body form > .smd-check-row,
#technician-form > .check{
  display:flex!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  clear:both!important;
  margin:18px 0 0!important;
}
.admin-editor-modal__body form > .check + button[type="submit"],
.admin-editor-modal__body form > .check + .button[type="submit"],
#technician-form > button[type="submit"]{
  display:flex!important;
  width:max-content!important;
  clear:both!important;
  margin:24px 0 0!important;
}

/* V28.45 · Solicitudes: contenido interno alineado aunque cambie el largo del título */
.admin-appointment-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-height:100%!important;
  box-sizing:border-box!important;
}
.admin-appointment-card .admin-appointment-card-top{flex:0 0 auto!important}
.admin-appointment-card .admin-appointment-card-main{
  flex:0 0 112px!important;
  min-height:112px!important;
  max-height:112px!important;
  margin:14px 0!important;
  align-items:center!important;
  overflow:hidden!important;
}
.admin-appointment-card .admin-appointment-card-main>div{min-width:0!important;width:100%!important}
.admin-appointment-card .admin-appointment-card-main h3{
  min-height:2.55em!important;
  max-height:2.55em!important;
  line-height:1.275!important;
  margin:0 0 5px!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
}
.admin-appointment-card .admin-appointment-card-main p{
  min-height:2.65em!important;
  max-height:2.65em!important;
  line-height:1.325!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
}
.admin-appointment-card .admin-appointment-card-info{
  flex:0 0 64px!important;
  min-height:64px!important;
  max-height:64px!important;
  box-sizing:border-box!important;
  align-items:center!important;
}
.admin-appointment-card .admin-appointment-reason{
  flex:1 1 auto!important;
  min-height:76px!important;
  max-height:76px!important;
  line-height:1.45!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-line-clamp:3!important;
  -webkit-box-orient:vertical!important;
  box-sizing:border-box!important;
}
.admin-appointment-card .admin-appointment-footer{flex:0 0 30px!important;margin-top:auto!important}
@media(max-width:620px){
 .admin-appointment-card .admin-appointment-card-main{flex-basis:104px!important;min-height:104px!important;max-height:104px!important}
 .admin-appointment-card .admin-appointment-reason{min-height:66px!important;max-height:66px!important}
}

/* V28.46 · PRÓXIMA por hora real + PENDIENTE vencida */
@keyframes smdAdminNextGlow{0%,100%{box-shadow:0 0 0 1px rgba(65,255,146,.55),0 0 12px rgba(65,255,146,.20)}50%{box-shadow:0 0 0 2px rgba(99,255,166,.98),0 0 34px rgba(65,255,146,.62)}}
@keyframes smdPendingOverdueGlow{0%,100%{box-shadow:0 0 0 1px rgba(255,191,63,.58),0 0 12px rgba(255,166,35,.22)}50%{box-shadow:0 0 0 2px rgba(255,205,91,.98),0 0 34px rgba(255,166,35,.64)}}
.admin-appointment-card.smd-admin-next-card{border-color:#63ffa6!important;animation:smdAdminNextGlow 1.7s ease-in-out infinite}
.admin-appointment-card.smd-admin-pending-overdue{border-color:#ffbf3f!important;animation:smdPendingOverdueGlow 1.55s ease-in-out infinite}
.admin-appointment-card.smd-admin-pending-overdue .status.pendiente{box-shadow:0 0 9px rgba(255,191,63,.72),0 0 18px rgba(255,166,35,.35)}
@media (prefers-reduced-motion:reduce){.admin-appointment-card.smd-admin-next-card,.admin-appointment-card.smd-admin-pending-overdue{animation:none!important}}
.appointment-age-chip.age-next{color:#63ffa6!important;border-color:#63ffa6!important;text-shadow:0 0 8px rgba(99,255,166,.8)}
.appointment-age-chip.age-overdue-pending{color:#ffbf3f!important;border-color:#ffbf3f!important;text-shadow:0 0 8px rgba(255,191,63,.85)}

/* V28.47 · PRÓXIMA solo el mismo día y dentro de 2 h + LED ligero */
@keyframes smdNextLedPulse{0%,100%{opacity:.18;box-shadow:0 0 2px rgba(99,255,166,.2)}50%{opacity:1;box-shadow:0 0 7px #63ffa6,0 0 14px rgba(99,255,166,.85)}}
.smd-next-led{display:inline-block;width:7px;height:7px;border-radius:50%;background:#63ffa6;vertical-align:1px;margin-right:3px;animation:smdNextLedPulse 1.05s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.smd-next-led{animation:none;opacity:1}}
/* V28.48 · selector inteligente SMDTRONIC para listas grandes */
.smd-smart-picker{position:relative;z-index:20;margin:14px 0 18px}.smd-smart-trigger{width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border:1px solid rgba(15,255,255,.48);border-radius:14px;background:linear-gradient(135deg,rgba(5,25,39,.98),rgba(4,17,29,.98));color:#eafcff;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 0 0 1px rgba(15,255,255,.05),inset 0 0 22px rgba(15,255,255,.025)}
.smd-smart-trigger:hover,.smd-smart-trigger[aria-expanded="true"]{border-color:#0fffff;box-shadow:0 0 18px rgba(15,255,255,.18)}.smd-smart-trigger b{color:#0fffff;font-size:20px}.smd-smart-panel{position:absolute;left:0;right:0;top:calc(100% - 2px);padding:12px;border:1px solid rgba(15,255,255,.5);border-radius:0 0 16px 16px;background:rgba(3,18,30,.985);box-shadow:0 18px 45px rgba(0,0,0,.5),0 0 24px rgba(15,255,255,.12);max-height:470px;overflow:auto;z-index:300}.smd-smart-search-wrap{display:flex;align-items:center;gap:10px;position:sticky;top:0;padding:4px 4px 10px;background:rgba(3,18,30,.98);z-index:2}.smd-smart-search-wrap span{color:#0fffff;font-size:22px}.smd-smart-search{width:100%;min-height:44px;border:1px solid rgba(15,255,255,.32);border-radius:12px;background:#071827;color:#fff;padding:10px 13px;outline:none}.smd-smart-search:focus{border-color:#65ff9a;box-shadow:0 0 14px rgba(101,255,154,.16)}.smd-smart-results{display:grid;gap:7px}.smd-smart-option{width:100%;display:grid;grid-template-columns:46px 1fr 20px;align-items:center;gap:10px;text-align:left;padding:10px;border:1px solid rgba(112,201,232,.16);border-radius:12px;background:rgba(7,31,48,.72);color:#fff;cursor:pointer}.smd-smart-option:hover{border-color:#65ff9a;background:rgba(8,48,53,.86);transform:translateX(2px)}.smd-smart-option strong,.smd-smart-option small{display:block}.smd-smart-option small{margin-top:3px;color:#9fc3d5}.smd-smart-option i{color:#0fffff;font-style:normal;font-size:22px}.smd-smart-car{display:flex;align-items:center;justify-content:center;min-width:40px}.smd-smart-foot,.smd-smart-empty{padding:10px;color:#7fa7ba;font-size:12px;text-align:center}
/* V28.51 · Cotizaciones / Facturación SMDTRONIC */
.smd-billing-card{cursor:pointer}.smd-billing-card:hover{transform:translateY(-2px);box-shadow:0 0 22px rgba(15,255,255,.18)}
.smd-financial-client-card{margin-top:14px;padding:16px;border:1px solid rgba(15,255,255,.38);border-radius:18px;background:linear-gradient(145deg,rgba(2,22,35,.96),rgba(4,37,48,.88));box-shadow:0 0 18px rgba(15,255,255,.08)}
.smd-financial-client-card .finance-credit{color:#71ff9a}.smd-financial-client-card .finance-balance{color:#ffbf47}.smd-financial-client-card.is-paid{border-color:rgba(113,255,154,.55)}

/* V28.52 · horas SMDTRONIC y promoción de revisión en creación de cita */
.smd-time-buttons{display:flex;flex-wrap:wrap;gap:9px;margin-top:8px}.smd-time-button,.smd-choice-button{border:1px solid #0fffff;background:#071d2f;color:#eaffff;border-radius:12px;padding:8px 12px;font-weight:800;cursor:pointer;box-shadow:0 0 0 rgba(15,255,255,0);transition:.16s ease}.smd-time-button:hover,.smd-choice-button:hover{transform:translateY(-1px);box-shadow:0 0 13px rgba(15,255,255,.24)}.smd-time-button.is-selected,.smd-choice-button.is-selected{background:rgba(15,255,255,.16);color:#0fffff;box-shadow:0 0 15px rgba(15,255,255,.38)}.smd-promo-appointment{border:1px solid rgba(15,255,255,.25);border-radius:16px;padding:14px;margin:12px 0}.smd-promo-choice{display:flex;flex-wrap:wrap;gap:10px;margin:7px 0 4px}@media(max-width:620px){.smd-time-button{padding:8px 10px;font-size:.82rem}.smd-choice-button{flex:1 1 150px}}

/* V28.59 · Biblioteca CAN en fichas SMDTRONIC */
.canlib-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:4px 0 20px}.canlib-toolbar .muted{margin:0;max-width:720px}.canlib-new{flex:0 0 auto}.canlib-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-height:62vh;overflow:auto;padding:2px 5px 8px 2px}.canlib-card{border:1px solid rgba(22,217,244,.38);border-radius:16px;padding:18px;background:linear-gradient(180deg,rgba(7,21,38,.96),rgba(2,8,17,.98));box-shadow:inset 0 0 24px rgba(22,217,244,.05),0 0 16px rgba(22,217,244,.07);min-width:0}.canlib-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding-bottom:11px;border-bottom:1px solid rgba(22,217,244,.16)}.canlib-card-head small{color:#76d8e8;letter-spacing:.08em}.canlib-card-head h4{margin:5px 0 0;color:#efffff;font-size:1.02rem}.canlib-star{color:#b5ff28;font-size:1.25rem;text-shadow:0 0 12px rgba(181,255,40,.55)}.canlib-vehicle{margin:12px 0;color:#d9faff;font-weight:700}.canlib-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.canlib-meta span{display:flex;flex-direction:column;min-width:0;color:#d6e9f2}.canlib-meta b{font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:#6faec0;margin-bottom:3px}.canlib-meta code{white-space:normal;overflow-wrap:anywhere;color:#b7f8ff}.canlib-actions{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:18px;padding-top:15px;border-top:1px solid rgba(22,217,244,.14)}.canlib-state{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border-radius:10px;font-size:.72rem;font-weight:800;letter-spacing:.08em;border:1px solid #ffc34d;color:#ffc34d;background:rgba(255,195,77,.07)}.canlib-state-verified{border-color:#9cff26;color:#9cff26;background:rgba(156,255,38,.07)}.canlib-state-captured{border-color:#16e9ff;color:#16e9ff;background:rgba(22,233,255,.07)}.canlib-edit{min-width:112px;margin-left:auto}.lab-modal:has(.canlib-grid){width:min(1040px,96vw)}@media(max-width:820px){.canlib-toolbar{align-items:stretch;flex-direction:column}.canlib-new{width:100%}.canlib-grid{grid-template-columns:1fr}.canlib-meta{grid-template-columns:1fr}.canlib-actions{gap:16px}}

/* V28.60 · Cotizaciones equilibradas */
.smd-quotation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.smd-quotation-card{position:relative;min-width:0}.smd-quotation-card h3,.smd-quotation-card p,.smd-quotation-card span{overflow-wrap:anywhere}.smd-quote-select{display:flex;gap:8px;align-items:center;margin:0 0 10px;color:#a9c2d1;font-size:.78rem}.smd-quote-toolbar{gap:16px;align-items:flex-end;flex-wrap:wrap}.smd-quote-modal-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.smd-quote-modal-actions>*{min-width:0;text-align:center}.smd-quotation-card .admin-work-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.smd-quotation-card .admin-work-summary span{min-width:0}
@media(max-width:800px){.smd-quotation-grid{grid-template-columns:1fr}.smd-quote-modal-actions{grid-template-columns:1fr}.smd-quotation-card .admin-work-summary{grid-template-columns:1fr 1fr}}

/* V28.61 · CAN profesional: simulación explícita, nunca senoide */
.can-scope{margin:18px 0;padding:16px;border:1px solid rgba(22,233,255,.32);border-radius:18px;background:linear-gradient(180deg,rgba(2,14,24,.98),rgba(1,7,13,.98));box-shadow:inset 0 0 32px rgba(22,233,255,.04)}
.can-scope-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.can-scope-head>div{display:grid;gap:4px}.can-scope-head small{color:#6faec0;letter-spacing:.12em;font-weight:800}.can-scope-head strong{color:#dffcff;font-size:.86rem}.can-scope-svg{display:block;width:100%;height:220px;border:1px solid rgba(62,220,255,.18);border-radius:12px;background:#010a10}.can-grid path{stroke:#123442;stroke-width:1;fill:none}.can-h,.can-l{fill:none;stroke-width:4;stroke-linejoin:miter;stroke-linecap:square;filter:drop-shadow(0 0 5px currentColor)}.can-h{stroke:#16e9ff;color:#16e9ff}.can-l{stroke:#9cff26;color:#9cff26}.can-off-text{fill:#6f8f9c;font:700 16px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.04em}.can-scope-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:10px;color:#ccecf3;font-size:.75rem}.can-scope-legend span{display:flex;align-items:center;gap:7px;font-weight:800}.can-scope-legend i{width:18px;height:3px;border-radius:2px}.can-scope-legend .h{background:#16e9ff;box-shadow:0 0 8px #16e9ff}.can-scope-legend .l{background:#9cff26;box-shadow:0 0 8px #9cff26}.can-scope-legend em{margin-left:auto;color:#6f8f9c;font-style:normal}.can-sim-toggle{min-width:210px}
@media(max-width:720px){.can-scope-head{align-items:stretch;flex-direction:column}.can-sim-toggle{width:100%;min-width:0}.can-scope-svg{height:170px}.can-scope-legend em{margin-left:0;width:100%}}

/* V28.72 · Mis vehículos: estados y resumen financiero legibles */
.repair-state,.payment-state-chip{white-space:nowrap;line-height:1.15}
.smd-financial-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.smd-financial-values{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px}
.smd-financial-values>span{display:flex;flex-direction:column;gap:4px;min-width:0;padding:10px 12px;border:1px solid rgba(83,231,255,.14);border-radius:12px;background:rgba(2,15,25,.42)}
.smd-financial-values small{color:#8eb9ca;font-size:.73rem;letter-spacing:.03em}
.smd-financial-values strong{color:#f2fcff;overflow-wrap:anywhere}
.smd-financial-values .finance-balance strong{color:#ffbf47}.smd-financial-values .finance-credit strong{color:#71ff9a}
.smd-financial-note{grid-column:1/-1;display:grid;gap:4px;padding:10px 12px;border:1px solid rgba(113,255,154,.2);border-radius:12px;background:rgba(15,54,38,.18)}
.vehicle-client-title .vehicle-brand-mark{filter:drop-shadow(0 0 5px var(--brand-color,#53e7ff));opacity:1}
@media(max-width:720px){.smd-financial-values{grid-template-columns:1fr}.smd-financial-head{align-items:flex-start}.payment-state-chip{font-size:.68rem}}

/* V28.78 · SMDTRONIC Image Studio */
.smd-image-editor-launch{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0 14px}.smd-image-editor-launch small{color:var(--admin-muted);font-size:.72rem}.smd-image-studio[hidden]{display:none!important}.smd-image-studio{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:18px}.smd-image-studio-backdrop{position:absolute;inset:0;background:rgba(0,4,10,.88);backdrop-filter:blur(8px)}.smd-image-studio-dialog{position:relative;width:min(1180px,96vw);max-height:94vh;overflow:auto;border:1px solid rgba(65,230,255,.38);border-radius:20px;background:linear-gradient(145deg,#07121e,#061018 70%,#07191c);box-shadow:0 0 70px rgba(0,220,255,.14);color:#eaffff}.smd-image-studio-dialog>header,.smd-image-studio-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid rgba(76,224,255,.16)}.smd-image-studio-dialog>footer{justify-content:flex-end;border-top:1px solid rgba(76,224,255,.16);border-bottom:0}.smd-image-studio-dialog h2{margin:2px 0 0}.smd-img-x{width:42px;height:42px;border-radius:50%;border:1px solid rgba(89,233,255,.35);background:#0b1d28;color:#cfffff;font-size:28px}.smd-image-studio-grid{display:grid;grid-template-columns:220px 1fr;min-height:520px}.smd-image-tools{padding:16px;border-right:1px solid rgba(76,224,255,.14);display:flex;flex-direction:column;gap:9px}.smd-image-tools button{padding:11px 12px;text-align:left;border:1px solid rgba(68,221,255,.24);border-radius:10px;background:rgba(8,31,43,.72);color:#eaffff;font-weight:750;cursor:pointer}.smd-image-tools button:hover{border-color:#3fe9ff;box-shadow:0 0 14px rgba(63,233,255,.12)}.smd-image-tools .is-ai{border-color:rgba(178,98,255,.42);color:#e4c8ff}.smd-img-help,.smd-img-status{color:var(--admin-muted);font-size:.76rem;line-height:1.45}.smd-image-work{padding:16px;min-width:0}.smd-image-canvas-wrap{display:grid;place-items:center;min-height:390px;padding:10px;border:1px solid rgba(72,225,255,.16);border-radius:14px;background:#02070c;overflow:auto}.smd-image-canvas-wrap canvas{display:block;max-width:100%;height:auto;max-height:62vh;border-radius:8px;box-shadow:0 0 26px rgba(0,0,0,.45)}.smd-image-adjust{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.smd-image-adjust label{display:grid;gap:5px;color:#bcecf2;font-size:.74rem}.smd-image-adjust input{width:100%}body.smd-image-studio-open{overflow:hidden}@media(max-width:760px){.smd-image-studio{padding:5px}.smd-image-studio-grid{grid-template-columns:1fr}.smd-image-tools{border-right:0;border-bottom:1px solid rgba(76,224,255,.14);display:grid;grid-template-columns:repeat(2,1fr)}.smd-img-help{grid-column:1/-1}.smd-image-adjust{grid-template-columns:1fr}.smd-image-studio-dialog>footer{flex-wrap:wrap}.smd-image-studio-dialog>footer .button{flex:1}.smd-image-canvas-wrap{min-height:260px}}
/* V28.71 review workflow */
.smd-review-completed-line{display:flex;align-items:center;gap:.65rem;margin:.15rem 0 1rem;padding:.7rem 1rem;border:1px solid rgba(123,255,83,.55);border-radius:14px;background:rgba(42,125,56,.13);color:#a8ff8a;letter-spacing:.08em}.smd-review-completed-line span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(123,255,83,.16);border:1px solid rgba(123,255,83,.55)}.smd-related-appointment-readonly{padding:.85rem 1rem;border:1px solid rgba(0,229,255,.42);border-radius:14px;background:rgba(3,26,42,.62)}.smd-related-appointment-readonly>span,.smd-related-appointment-readonly>small{display:block}.smd-related-appointment-readonly>strong{display:block;margin:.35rem 0;color:#eaf8ff}.review-price-edit input[readonly]{opacity:.72;cursor:not-allowed;border-color:rgba(123,255,83,.35)}

/* V28.81 · acciones compactas y alineadas para galerías del backend */
.service-gallery-admin-item .smd-gallery-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;padding-top:8px;border-top:1px solid rgba(73,224,255,.14)}
.service-gallery-admin-item .smd-gallery-active-toggle{display:inline-flex;align-items:center;gap:7px;margin:0;padding:7px 10px;min-height:36px;border:1px solid rgba(73,224,255,.25);border-radius:10px;background:rgba(5,24,38,.72);white-space:nowrap}
.service-gallery-admin-item .smd-gallery-active-toggle input{margin:0;flex:0 0 auto}
.service-gallery-admin-item .smd-mini-action{margin:0;min-height:36px;padding:7px 11px;line-height:1.1;white-space:nowrap}
.service-gallery-admin-item .smd-mini-action.danger{border-color:rgba(255,82,96,.48);color:#ff8e98;background:rgba(90,18,28,.25)}
/* Evita que acciones cortas queden montadas en tarjetas estrechas de cualquier galería */
.service-gallery-admin-item .check,.evidence-admin-item .check{max-width:100%;box-sizing:border-box}
.service-gallery-admin-item .text-button,.evidence-admin-item .text-button{margin:0}
@media(max-width:720px){.service-gallery-admin-item .smd-gallery-card-actions{display:grid;grid-template-columns:1fr 1fr}.service-gallery-admin-item .smd-gallery-active-toggle{grid-column:1/-1}.service-gallery-admin-item .smd-mini-action{width:100%}}


/* V28.82 · Frontend móvil: galería por toque + superficie SMD hasta el safe-area */
html,body{background:#020817;}
@supports(padding:max(0px)){body{padding-bottom:env(safe-area-inset-bottom);}}
@media (hover:none),(pointer:coarse){
  body:not(:has(.admin-workspace)) .service-card.has-gallery:hover{transform:none;}
  body:not(:has(.admin-workspace)) .service-card.has-gallery:active{transform:scale(.992);}
}

/* V28.83 · acciones compactas 2x2 */
.service-gallery-admin-item .smd-gallery-card-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.service-gallery-admin-item .smd-gallery-active-toggle,.service-gallery-admin-item .smd-mini-action{width:100%!important;min-width:0!important;min-height:32px!important;padding:6px 8px!important;justify-content:center!important;font-size:.72rem!important}.smd-img-counter{margin-right:auto;color:var(--admin-cyan,#55eaff);font-weight:800;font-size:.78rem;white-space:nowrap}

/* V28.83 · apariencia editable chat humano */
.smd-human-chat-button{border-color:var(--human-chat-border,#3ddaff)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--human-chat-bg,#051d2b) 92%,#020817),var(--human-chat-bg,#051d2b))!important}.smd-human-chat-panel{border-color:color-mix(in srgb,var(--human-chat-border,#3ddaff) 72%,transparent)!important;background:linear-gradient(160deg,color-mix(in srgb,var(--human-chat-bg,#051d2b) 86%,#020817),color-mix(in srgb,var(--human-chat-bg,#051d2b) 96%,#071e2d))!important}.smd-human-chat-icon{color:var(--human-chat-icon,#52e7ff)!important;border-color:color-mix(in srgb,var(--human-chat-icon,#52e7ff) 55%,transparent)!important;background:color-mix(in srgb,var(--human-chat-icon,#52e7ff) 13%,transparent)!important}
/* V28.84 · Traducciones fieles al español actual */
.translation-fidelity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.translation-fidelity-card{padding:14px;border:1px solid color-mix(in srgb,var(--border) 78%,var(--primary) 22%);border-radius:14px;background:color-mix(in srgb,var(--card) 96%,var(--primary) 4%)}
.translation-fidelity-card h5{margin:0 0 9px;font-size:.92rem;color:var(--foreground)}
.translation-source{margin-bottom:10px;padding:10px 12px;border-left:3px solid var(--primary);border-radius:9px;background:color-mix(in srgb,var(--background) 88%,var(--primary) 12%)}
.translation-source small{display:block;margin-bottom:4px;font-size:.65rem;font-weight:900;letter-spacing:.08em;color:var(--primary)}
.translation-source p{margin:0;white-space:pre-wrap;color:var(--foreground);font-size:.88rem;line-height:1.4}
@media(max-width:760px){.translation-fidelity-grid{grid-template-columns:1fr}}
/* V28.85 · Galería admin compacta y responsive */
.service-gallery-admin-item .smd-gallery-card-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:7px!important;align-items:stretch!important}
.service-gallery-admin-item .smd-gallery-active-toggle{grid-column:1/-1!important;width:100%!important;min-width:0!important;min-height:34px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;margin:0!important;padding:6px 8px!important;border:1px solid rgba(73,224,255,.22)!important;border-radius:11px!important;background:rgba(4,24,38,.62)!important;overflow:hidden!important}
.service-gallery-admin-item .smd-mini-action{grid-column:auto!important;width:100%!important;min-width:0!important;max-width:100%!important;min-height:34px!important;padding:6px 5px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:.67rem!important;line-height:1!important;letter-spacing:.025em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;box-sizing:border-box!important}
@media(max-width:520px){.service-gallery-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.service-gallery-admin-item .smd-mini-action{font-size:.62rem!important;padding-inline:3px!important}}

/* V28.86 · Frontend Servicios: tarjetas uniformes, imágenes y contenido alineados */
body:not(:has(.admin-workspace)) .services .service-grid{align-items:stretch;grid-auto-rows:1fr}
body:not(:has(.admin-workspace)) .services .service-card{
  display:flex;
  flex-direction:column;
  height:100%;
  min-height:555px;
  padding:32px;
  box-sizing:border-box;
}
body:not(:has(.admin-workspace)) .services .service-card .service-image-wrap{
  display:block;
  width:100%;
  height:208px;
  min-height:208px;
  margin:0 0 26px;
  overflow:hidden;
  border-radius:9px;
}
body:not(:has(.admin-workspace)) .services .service-card .service-image{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  object-position:center;
  margin:0;
  border-radius:inherit;
}
body:not(:has(.admin-workspace)) .services .service-card .card-top{
  flex:0 0 34px;
  min-height:34px;
  align-items:center;
  margin:0 0 18px;
}
body:not(:has(.admin-workspace)) .services .service-card h3{
  flex:0 0 auto;
  min-height:58px;
  margin:0 0 14px;
  display:flex;
  align-items:flex-start;
  font-size:clamp(1.22rem,1.65vw,1.52rem);
  line-height:1.2;
}
body:not(:has(.admin-workspace)) .services .service-card>p{
  flex:1 1 auto;
  min-height:112px;
  margin:0;
  line-height:1.55;
}
body:not(:has(.admin-workspace)) .services .service-card>a{
  flex:0 0 auto;
  margin-top:24px;
  min-height:28px;
  align-self:flex-start;
}
/* El botón flotante se centra siempre sobre el bloque de imagen uniforme. */
body:not(:has(.admin-workspace)) .services .service-gallery-hover{top:118px}
@media(max-width:1100px){
  body:not(:has(.admin-workspace)) .services .service-card{padding:26px;min-height:525px}
  body:not(:has(.admin-workspace)) .services .service-card .service-image-wrap{height:190px;min-height:190px}
  body:not(:has(.admin-workspace)) .services .service-gallery-hover{top:108px}
}
@media(max-width:900px){
  body:not(:has(.admin-workspace)) .services .service-card{min-height:0}
  body:not(:has(.admin-workspace)) .services .service-card h3{min-height:0}
  body:not(:has(.admin-workspace)) .services .service-card>p{min-height:0}
}
@media(max-width:640px){
  body:not(:has(.admin-workspace)) .services .service-card{padding:22px}
  body:not(:has(.admin-workspace)) .services .service-card .service-image-wrap{height:190px;min-height:190px;margin-bottom:22px}
  body:not(:has(.admin-workspace)) .services .service-card .card-top{margin-bottom:15px}
  body:not(:has(.admin-workspace)) .services .service-card h3{font-size:1.35rem;margin-bottom:12px}
  body:not(:has(.admin-workspace)) .services .service-card>a{margin-top:22px}
}

/* V28.87 · Servicios: slider panorámico + administrador compacto SMDTRONIC */
@media (min-width: 901px){
  .hero-layout{grid-template-columns:minmax(300px,35fr) minmax(0,65fr);gap:30px;align-items:center}
  .hero-layout>div:first-child,.hero-layout>.hero-copy{min-width:0}
  .hero-layout h1{font-size:clamp(2.35rem,4vw,4.7rem);margin:18px 0}
  .hero-copy{max-width:100%;font-size:17px;margin-bottom:22px}
  .hero-photo,.hero-slider{width:100%;max-width:none}
  .hero-photo img,.hero-slider .hero-slide img{height:500px}
}
.smd-services-head{align-items:flex-end;gap:18px}.smd-services-head small{color:var(--muted-foreground)}
.smd-services-editor-grid{grid-template-columns:minmax(420px,.9fr) minmax(0,1.35fr);align-items:start}
.smd-service-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.smd-service-admin-card{min-width:0;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 94%,#061b2c),color-mix(in srgb,var(--card) 97%,#07101d));box-shadow:inset 0 1px 0 rgba(255,255,255,.025);display:grid;gap:8px}
.smd-service-admin-card>strong{font-size:.96rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.smd-service-admin-card>small{color:var(--muted-foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smd-service-admin-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.smd-order-badge{display:inline-grid;place-items:center;min-width:38px;height:28px;border:1px solid var(--primary);border-radius:9px;color:var(--primary);font-weight:800;font-family:var(--font-display);box-shadow:0 0 14px color-mix(in srgb,var(--primary) 18%,transparent)}
.smd-status-chip{font-size:.72rem;padding:5px 8px;border-radius:999px;border:1px solid}.smd-status-chip.is-visible{color:#a8ff32;border-color:#78c925}.smd-status-chip.is-hidden{color:#ff9b9b;border-color:#8e3e4d}
.smd-service-card-actions{display:grid;grid-template-columns:38px 38px minmax(0,1fr);gap:7px;margin-top:2px}.smd-service-card-actions .smd-mini-action{min-width:0;width:100%;height:34px;padding:5px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.smd-service-edit{font-size:.78rem!important;letter-spacing:.04em}
.smd-admin-pagination{display:flex;justify-content:center;gap:7px;margin:16px 0 4px;flex-wrap:wrap}.smd-admin-pagination button{min-width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--foreground);cursor:pointer}.smd-admin-pagination button.active{background:var(--primary);color:#031018;border-color:var(--primary);font-weight:900;box-shadow:0 0 18px color-mix(in srgb,var(--primary) 30%,transparent)}.smd-admin-pagination button:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:1100px){.smd-services-editor-grid{grid-template-columns:1fr}.smd-service-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.smd-service-admin-grid{grid-template-columns:1fr}.smd-services-head{align-items:stretch}.smd-services-head .button{width:100%}}

/* V28.88 · Slider SMDTRONIC ancho, simétrico y tipografía adaptativa */
@media (min-width: 901px){
  body:not(:has(.admin-workspace)) .hero{width:min(94vw,1800px);max-width:none;padding-left:0;padding-right:0}
  body:not(:has(.admin-workspace)) .hero-layout{grid-template-columns:minmax(320px,35fr) minmax(0,65fr);gap:24px;align-items:stretch;width:100%}
  body:not(:has(.admin-workspace)) .hero-text-panel,
  body:not(:has(.admin-workspace)) .hero-slider,
  body:not(:has(.admin-workspace)) .hero-slider .hero-slide,
  body:not(:has(.admin-workspace)) .hero-slider .hero-slide img,
  body:not(:has(.admin-workspace)) .hero-slider .hero-watermarked-media{height:520px;min-height:520px;max-height:520px;box-sizing:border-box}
  body:not(:has(.admin-workspace)) .hero-text-panel{justify-content:center;padding:clamp(26px,2.7vw,48px)}
  body:not(:has(.admin-workspace)) .hero-text-panel h1{font-size:var(--hero-title-desktop,clamp(2.35rem,4vw,4.7rem));line-height:var(--hero-title-line-height,1.01);max-width:var(--hero-text-width,100%);margin:16px 0;transition:font-size .22s ease}
  body:not(:has(.admin-workspace)) .hero-text-panel .hero-copy{font-size:var(--hero-description-size,17px);max-width:var(--hero-text-width,100%);margin-bottom:20px}
  body:not(:has(.admin-workspace)) .hero-slider .smd-slider-watermark{top:260px!important}
}
@media (min-width:701px) and (max-width:900px){
  body:not(:has(.admin-workspace)) .hero{width:min(94vw,1200px);max-width:none;padding-left:0;padding-right:0}
  body:not(:has(.admin-workspace)) .hero-layout{grid-template-columns:minmax(280px,40fr) minmax(0,60fr);gap:20px;align-items:stretch}
  body:not(:has(.admin-workspace)) .hero-text-panel,
  body:not(:has(.admin-workspace)) .hero-slider,
  body:not(:has(.admin-workspace)) .hero-slider .hero-slide,
  body:not(:has(.admin-workspace)) .hero-slider .hero-slide img,
  body:not(:has(.admin-workspace)) .hero-slider .hero-watermarked-media{height:440px;min-height:440px;max-height:440px;box-sizing:border-box}
  body:not(:has(.admin-workspace)) .hero-text-panel h1{font-size:var(--hero-title-tablet,44px);line-height:var(--hero-title-line-height,1.01);max-width:var(--hero-text-width,100%)}
  body:not(:has(.admin-workspace)) .hero-text-panel .hero-copy{font-size:var(--hero-description-size,16px);max-width:var(--hero-text-width,100%)}
}
@media (max-width:700px){
  body:not(:has(.admin-workspace)) .hero{width:100%;max-width:none;padding-left:18px;padding-right:18px}
  body:not(:has(.admin-workspace)) .hero-layout{grid-template-columns:1fr;gap:18px}
  body:not(:has(.admin-workspace)) .hero-text-panel{height:auto;min-height:0;max-height:none;padding:22px}
  body:not(:has(.admin-workspace)) .hero-text-panel h1{font-size:var(--hero-title-mobile,36px);line-height:var(--hero-title-line-height,1.01);max-width:100%;margin:12px 0}
  body:not(:has(.admin-workspace)) .hero-text-panel .hero-copy{font-size:min(var(--hero-description-size,15px),18px);max-width:100%}
}
.smd-slider-typography{margin:18px 0;padding:16px;border:1px solid color-mix(in srgb,var(--primary) 38%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--card) 96%,var(--primary) 4%)}
.smd-slider-typography summary{cursor:pointer;font-weight:800;color:var(--primary);font-family:var(--font-display);letter-spacing:.04em}.smd-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-top:12px}@media(max-width:700px){.smd-type-grid{grid-template-columns:1fr}}

/* V28.89 · Backend SMDTRONIC: correo paginado, modal tipografía e imágenes por idioma */
.smd-slide-language-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:14px 0;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--card) 97%,var(--primary) 3%)}
.smd-slide-language-images>div{grid-column:1/-1;display:flex;justify-content:space-between;gap:12px;align-items:center}.smd-slide-language-images small{color:var(--muted-foreground)}
.smd-slider-type-launch{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0}.smd-type-config-button{min-height:44px;box-shadow:0 0 18px color-mix(in srgb,var(--primary) 16%,transparent)}.smd-type-state{padding:7px 11px;border:1px solid color-mix(in srgb,var(--primary) 45%,var(--border));border-radius:999px;color:var(--primary);font-size:.78rem;font-weight:800}.smd-type-dialog{max-width:760px}.smd-type-modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}
.smd-mail-delete-row{display:flex;justify-content:center;align-items:center;margin:18px 0 14px;padding-top:4px}.smd-mail-delete-row .mail-delete-compact{min-width:118px;justify-content:center}.smd-mail-card-list{display:grid;gap:10px}.smd-mail-card{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px}.smd-mail-card .list-item{width:100%;min-width:0;text-align:left}.smd-mail-pagination{margin-top:14px}.smd-mail-count{text-align:center;color:var(--muted-foreground);font-size:.78rem;margin:7px 0 0}
@media(max-width:700px){.smd-slide-language-images{grid-template-columns:1fr}.smd-type-modal-actions>*{width:100%}.smd-mail-card{grid-template-columns:28px minmax(0,1fr)}}
.smd-slider-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.smd-slider-admin-grid .slider-admin-item{min-width:0;margin:0}.smd-slider-admin-grid .slider-admin-item img{width:72px;height:52px;object-fit:cover;border-radius:9px}
@media(max-width:650px){.smd-slider-admin-grid{grid-template-columns:1fr}}
/* Consistencia visual de fichas administrativas */
#admin-section .category-row{padding:12px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--card) 97%,var(--primary) 3%);margin-bottom:10px;gap:10px}#admin-section .category-row .list-item{margin:0;flex:1}.smd-chat-person{border-radius:13px!important;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border))!important;margin-bottom:8px!important}

/* V28.90 · Image Studio consciente del viewport real del Slider */
.smd-upload-live-preview{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;align-items:center;margin:8px 0 15px;padding:10px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--card) 96%,#061b2c)}.smd-upload-live-preview[hidden]{display:none}.smd-upload-live-preview img{width:150px;height:88px;object-fit:cover;border-radius:9px;border:1px solid var(--border)}.smd-upload-live-preview div{display:grid;gap:4px;min-width:0}.smd-upload-live-preview strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smd-upload-live-preview small{color:var(--muted-foreground)}
.smd-img-context{display:grid;gap:4px;padding:10px 11px;border:1px solid rgba(70,230,255,.28);border-radius:10px;background:rgba(5,35,48,.72)}.smd-img-context strong{font-size:.76rem;color:#7af1ff;letter-spacing:.05em}.smd-img-context small{font-size:.68rem;color:#b8dbe0;line-height:1.4}.smd-img-device{display:grid;grid-template-columns:1fr;gap:6px}.smd-img-device button{font-size:.72rem!important;padding:8px 9px!important}.smd-img-device button.active{border-color:#63f1ff!important;color:#73f5ff!important;box-shadow:0 0 16px rgba(63,233,255,.16)}
@media(max-width:600px){.smd-upload-live-preview{grid-template-columns:1fr}.smd-upload-live-preview img{width:100%;height:160px}}

/* V28.91 · UI premium uniforme: categorías, tablas y acciones slider */
.category-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.category-admin-card{min-height:150px}.category-languages{display:flex;gap:7px;margin:12px 0}.category-languages span{padding:5px 9px;border:1px solid color-mix(in srgb,var(--primary) 45%,var(--border));border-radius:999px;color:var(--primary);font-size:.72rem;font-weight:900}.smd-card-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}.smd-danger-link{color:#ff7588!important}.smd-premium-table{width:100%;border-collapse:separate;border-spacing:0 7px}.smd-premium-table thead th,.finance-table table thead th{background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--primary);font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;padding:12px}.smd-premium-table tbody tr,.finance-table table tbody tr{background:color-mix(in srgb,var(--card) 96%,var(--primary) 4%);transition:.18s ease}.smd-premium-table tbody tr:hover,.finance-table table tbody tr:hover{background:color-mix(in srgb,var(--card) 88%,var(--primary) 12%);transform:translateY(-1px)}.smd-premium-table td,.finance-table table td{padding:12px;border-top:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));border-bottom:1px solid color-mix(in srgb,var(--primary) 16%,var(--border))}.smd-premium-table td:first-child,.finance-table table td:first-child{border-left:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));border-radius:12px 0 0 12px}.smd-premium-table td:last-child,.finance-table table td:last-child{border-right:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));border-radius:0 12px 12px 0}.smd-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}.smd-slider-admin-grid .smd-card-actions,.smd-slider-type-launch,.smd-type-modal-actions{gap:12px!important}.smd-slider-admin-grid button,.smd-slider-type-launch button{margin:0!important}.slider-admin-item{padding:10px!important;border-radius:12px}.slider-admin-item+.slider-admin-item{margin-top:0!important}@media(max-width:700px){.category-admin-grid{grid-template-columns:1fr}.smd-premium-table,.finance-table table{min-width:760px}.finance-table{overflow:auto}.smd-card-actions>*{flex:1}}
#admin-section table{width:100%;border-collapse:separate;border-spacing:0 7px}#admin-section table thead th{background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--primary);font-size:.75rem;text-transform:uppercase;letter-spacing:.055em;padding:12px;white-space:nowrap}#admin-section table tbody tr{background:color-mix(in srgb,var(--card) 96%,var(--primary) 4%);transition:transform .16s ease,background .16s ease}#admin-section table tbody tr:hover{background:color-mix(in srgb,var(--card) 89%,var(--primary) 11%)}#admin-section table td{padding:11px 12px;border-top:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));border-bottom:1px solid color-mix(in srgb,var(--primary) 16%,var(--border))}#admin-section table td:first-child{border-left:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));border-radius:11px 0 0 11px}#admin-section table td:last-child{border-right:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));border-radius:0 11px 11px 0}


/* V28.94 · Slider final actions + nested AI dialogs */
#slider-form > .check:last-of-type{margin-top:20px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--card) 96%,var(--primary) 4%)}
#slider-form > .smd-slide-final-actions{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);gap:14px;margin-top:16px;align-items:stretch}
#slider-form > .smd-slide-final-actions .button,#slider-form > .smd-slide-final-actions .text-button{min-height:52px;margin:0!important;display:flex;align-items:center;justify-content:center;border-radius:14px;font-weight:850;text-align:center}
#slider-form > .smd-slide-final-actions .text-button{border:1px solid rgba(255,90,110,.45);background:rgba(80,8,20,.20);color:#ff7d91!important}
#slider-form > .smd-slide-final-actions .text-button:hover{border-color:#ff6b82;background:rgba(100,10,24,.34);box-shadow:0 0 18px rgba(255,80,105,.12)}
body.smd-image-studio-open .admin-editor-modal{z-index:120500!important;background:rgba(0,4,10,.90)!important;backdrop-filter:blur(10px)!important}
body.smd-image-studio-open .admin-editor-modal__dialog{box-shadow:0 30px 100px rgba(0,0,0,.78),0 0 42px rgba(77,230,255,.16)!important}
@media(max-width:620px){#slider-form > .smd-slide-final-actions{grid-template-columns:1fr}}

/* V28.95 cita manual: promoción sin dirección */
.smd-promo-credit-row{display:grid;grid-template-columns:minmax(280px,1fr) minmax(240px,.8fr);gap:22px;align-items:end}.smd-manual-review-credit{margin:0;padding:12px 14px;border:1px solid rgba(15,255,255,.3);border-radius:14px;background:rgba(4,22,38,.72);box-shadow:inset 0 0 18px rgba(15,255,255,.04)}.smd-manual-review-credit[hidden]{display:none!important}@media(max-width:760px){.smd-promo-credit-row{grid-template-columns:1fr;gap:12px}}

/* V28.109 · UI consistente SMDTRONIC: separación de acciones + selectores no nativos */
:root{--smd-control-gap:12px}
.smd-actions,.actions,.form-actions,.calendar-form-actions,.smd-card-actions,.smd-service-card-actions,.smd-type-modal-actions,.smd-slide-final-actions,.smd-accounting-actions{gap:var(--smd-control-gap)!important;row-gap:var(--smd-control-gap)!important}
.panel>.button,.panel>button.button{margin-top:12px}
.panel>.button+.button,.panel>button.button+button.button{margin-left:10px}
.panel>.check{display:inline-flex!important;align-items:center!important;gap:9px!important;margin:6px 14px 8px 0!important;vertical-align:middle}
.panel h3+.check{margin-top:10px!important}
button,.button,.text-button{touch-action:manipulation}

/* El select real conserva valor, validación y envío del formulario, pero no abre UI nativa. */
select.smd-native-select-hidden{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;overflow:hidden!important;white-space:nowrap!important}
.smd-select-shell{position:relative;display:block;width:100%;min-width:0}
.smd-select-trigger{width:100%;min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:11px 14px;border:1px solid #24566b;border-radius:12px;background:linear-gradient(145deg,#071927,#0a2232);color:#eaffff;font:inherit;font-weight:750;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(15,255,255,.025);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.smd-select-trigger:hover,.smd-select-trigger:focus-visible,.smd-select-trigger[aria-expanded="true"]{outline:none;border-color:#0fffff;background:#08283a;box-shadow:0 0 18px rgba(15,255,255,.18)}
.smd-select-trigger:disabled{opacity:.55;cursor:not-allowed}
.smd-select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smd-select-chevron{width:10px;height:10px;flex:0 0 auto;border-right:2px solid #0fffff;border-bottom:2px solid #0fffff;transform:rotate(45deg) translateY(-2px);transition:transform .16s ease}
.smd-select-trigger[aria-expanded="true"] .smd-select-chevron{transform:rotate(225deg) translate(-2px,-2px)}
.smd-select-menu{position:fixed;z-index:2147483000;display:none;max-height:min(360px,48vh);overflow:auto;padding:7px;border:1px solid #0fffff;border-radius:14px;background:#061725;color:#fff;box-shadow:0 18px 46px rgba(0,0,0,.72),0 0 28px rgba(15,255,255,.16);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.smd-select-menu.is-open{display:block}
.smd-select-option{width:100%;min-height:44px;display:flex;align-items:center;text-align:left;padding:10px 12px;margin:0 0 5px;border:1px solid transparent;border-radius:10px;background:#081f2d;color:#eaffff;font:inherit;cursor:pointer}
.smd-select-option:last-child{margin-bottom:0}.smd-select-option:hover,.smd-select-option:focus-visible{outline:none;border-color:#0fffff;background:#0a3042}.smd-select-option.is-selected{border-color:#0fffff;color:#0fffff;background:#083246;box-shadow:inset 0 0 14px rgba(15,255,255,.08)}.smd-select-option:disabled{opacity:.45;cursor:not-allowed}
.smd-select-group{padding:8px 10px 5px;color:#78aabc;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:1100px){
 :root{--smd-control-gap:14px}
 .panel>.check{margin:7px 16px 10px 0!important}
 .smd-select-trigger{min-height:48px;padding:12px 14px}
 .smd-select-option{min-height:48px}
}
@media(max-width:700px){
 .panel>.button,.panel>button.button{width:100%;margin:12px 0 0!important}
 .panel>.check{display:flex!important;width:100%;margin:7px 0 11px!important}
 .smd-actions,.actions,.form-actions,.calendar-form-actions,.smd-card-actions,.smd-service-card-actions,.smd-type-modal-actions,.smd-slide-final-actions,.smd-accounting-actions{gap:14px!important}
 .smd-actions>button,.actions>button,.form-actions>button,.calendar-form-actions>button{min-height:46px}
 .smd-select-menu{max-height:52vh}
}
/* V28.116 Ford logo fallback: SVG <img> avoids cross-origin CSS-mask failures. */
.vehicle-brand-badge.brand-ford .vehicle-brand-img{display:block;width:100%;height:100%;max-width:76px;max-height:38px;object-fit:contain;filter:drop-shadow(0 0 5px rgba(56,168,255,.35))}

/* V28.117 · Image Studio responsive + activación */
.hero-slider .hero-slide picture{display:block;width:100%;height:100%}.hero-slider .hero-slide picture img{width:100%;height:100%;object-fit:cover}.smd-responsive-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0;padding:14px;border:1px solid rgba(45,230,255,.24);border-radius:14px;background:rgba(4,24,35,.62)}.smd-responsive-image-grid small{grid-column:1/-1;color:var(--muted-foreground)}.smd-activation-button{border:1px solid rgba(62,255,184,.58)!important;background:linear-gradient(135deg,rgba(8,49,48,.95),rgba(7,25,43,.96))!important;color:#83ffd2!important;border-radius:12px!important;padding:10px 14px!important;font-weight:850!important;box-shadow:0 0 18px rgba(55,255,190,.10)}@media(max-width:700px){.smd-responsive-image-grid{grid-template-columns:1fr}}

/* SMDTRONIC V28.127 — consolidación visual backend */
.smd-customer-identity{display:grid;gap:6px}.smd-customer-identity strong{font-size:15px;color:var(--admin-text,#eef8ff)}.smd-customer-identity small{display:block;color:var(--admin-muted,#9cb6c9)}.smd-customer-identity small b{color:#54e9ff;margin-right:5px}
.smd-comms-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}.smd-comms-column{display:grid;gap:22px}.smd-space-panel{position:relative;overflow:hidden;border:1px solid rgba(56,224,255,.28)!important;background:linear-gradient(145deg,rgba(8,31,48,.96),rgba(3,13,29,.98))!important;box-shadow:inset 0 0 28px rgba(0,213,255,.035),0 16px 40px rgba(0,0,0,.18)}.smd-space-panel:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#19e5ff,#8cff2f,transparent)}.smd-test-panel{border-color:rgba(140,255,47,.42)!important}.smd-panel-kicker{font-size:11px;font-weight:900;letter-spacing:.16em;color:#8cff2f;margin-bottom:8px}.smd-subsystem{margin:18px 0;padding:16px;border:1px solid rgba(62,210,255,.18);border-radius:14px;background:rgba(0,0,0,.14)}.smd-subsystem h4{margin-top:0;color:#5cecff}
.smd-picker-control,.smd-date-control{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:stretch!important}.smd-picker-control button,.smd-date-control button{width:auto!important;min-width:112px!important;min-height:48px!important;padding:8px 13px!important;border:1px solid rgba(41,225,255,.42)!important;border-radius:12px!important;background:linear-gradient(145deg,#102a3b,#071726)!important;color:#dffaff!important;display:flex!important;gap:8px!important;align-items:center!important;justify-content:center!important}.smd-picker-control button svg,.smd-date-control button svg,.smd-icon-library button svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;color:#51eaff!important}.smd-picker-control button span,.smd-date-control button span{font-size:12px;font-weight:800}.smd-accounting-kind{gap:10px!important}.smd-accounting-kind label span{background:#0b2132!important;border:1px solid rgba(72,225,255,.35)!important;color:#eafaff!important;border-radius:12px!important}
.smd-icon-library,.smd-icon-grid{gap:10px!important}.smd-icon-library button,.smd-icon-grid button{background:linear-gradient(145deg,#0b2638,#061522)!important;border:1px solid rgba(66,226,255,.28)!important;border-radius:12px!important;color:#dffaff!important;min-height:78px!important;padding:10px!important}.smd-icon-library button:hover,.smd-icon-grid button:hover{border-color:#8cff2f!important;box-shadow:0 0 18px rgba(140,255,47,.12)!important}.smd-icon-library button span,.smd-icon-grid button span{color:#dffaff!important}
.smd-chat-admin{grid-template-columns:minmax(280px,36%) minmax(0,1fr)!important;gap:20px!important}.smd-chat-client-cards{display:grid;gap:10px}.smd-chat-client-card{width:100%;display:grid!important;grid-template-columns:42px minmax(0,1fr) auto!important;gap:11px!important;align-items:center!important;text-align:left!important;padding:12px!important;border:1px solid rgba(63,216,255,.22)!important;border-radius:14px!important;background:linear-gradient(145deg,rgba(12,39,57,.96),rgba(5,19,33,.96))!important}.smd-chat-client-card.active{border-color:#8cff2f!important;box-shadow:0 0 20px rgba(140,255,47,.1)!important}.smd-chat-avatar{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#0c3347;border:1px solid #25dcff;color:#8cff2f;font-weight:900}.smd-chat-card-copy{display:grid;min-width:0}.smd-chat-card-copy strong,.smd-chat-card-copy small,.smd-chat-card-copy em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smd-chat-card-copy small{color:#74eaff;font-size:11px}.smd-chat-card-copy em{color:#91a9ba;font-size:11px;font-style:normal;margin-top:3px}
[data-content-panel="translations"] .translation-language-selector{margin-top:16px!important}.translation-language-panel,.translation-language-selector{gap:14px!important}.translation-language-selector select{margin-top:8px!important}.content-option-panel[data-content-panel="theme"] .color-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;gap:14px!important}.content-option-panel[data-content-panel="theme"] .field{padding:12px;border:1px solid rgba(64,220,255,.18);border-radius:12px;background:rgba(7,28,43,.6)}.content-option-panel[data-content-panel="theme"] input[type="color"]{height:46px!important;width:100%!important;border-radius:10px!important}.smd-service-admin-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;gap:16px!important}.smd-service-admin-card{min-height:150px!important;border-radius:16px!important;background:linear-gradient(145deg,rgba(10,39,58,.97),rgba(4,18,31,.98))!important;border:1px solid rgba(55,220,255,.27)!important;box-shadow:inset 0 0 22px rgba(0,220,255,.025)}.smd-service-admin-card:hover{border-color:#8cff2f!important;transform:translateY(-2px)}
@media(max-width:900px){.smd-comms-grid{grid-template-columns:1fr}.smd-chat-admin{grid-template-columns:1fr!important}}
\n/* V28.130 · Image Studio layout/restore hardening */
.smd-image-studio{z-index:130000!important;display:flex!important;align-items:center;justify-content:center;overflow:hidden;padding:16px!important}
.smd-image-studio[hidden]{display:none!important}
.smd-image-studio-dialog{width:min(1440px,calc(100vw - 32px))!important;height:min(920px,calc(100vh - 32px));max-height:calc(100vh - 32px)!important;overflow:hidden!important;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.smd-image-studio-grid{grid-template-columns:minmax(250px,290px) minmax(0,1fr)!important;min-height:0!important;overflow:hidden}
.smd-image-tools{min-width:0;overflow-y:auto;overflow-x:hidden;padding:16px!important}
.smd-image-work{min-width:0!important;min-height:0;overflow:auto;display:grid;grid-template-rows:minmax(320px,1fr) auto auto;align-content:stretch}
.smd-image-canvas-wrap{width:100%;min-width:0;min-height:320px!important;height:100%;overflow:hidden!important;padding:14px!important}
.smd-image-canvas-wrap canvas{max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain}
.smd-image-studio-dialog>footer{flex-wrap:wrap;position:relative;z-index:2;background:#07121e}
.smd-img-context{display:grid;gap:4px;padding:12px;border:1px solid rgba(76,224,255,.25);border-radius:12px;background:rgba(4,25,35,.72);overflow:hidden}
.smd-img-context strong,.smd-img-context small{display:block;max-width:100%;overflow-wrap:anywhere}
.smd-img-device{display:grid;grid-template-columns:1fr;gap:7px}.smd-img-device button.active{border-color:#a6ff70!important;color:#a6ff70!important;box-shadow:0 0 16px rgba(166,255,112,.12)}
.smd-upload-live-preview{display:grid!important;grid-template-columns:minmax(120px,180px) minmax(0,1fr)!important;gap:14px;align-items:center;max-width:100%;overflow:hidden}
.smd-upload-live-preview[hidden]{display:none!important}.smd-upload-live-preview img{width:100%!important;max-width:180px;height:110px!important;object-fit:cover;border-radius:10px}.smd-upload-live-preview>div{min-width:0}.smd-upload-live-preview strong,.smd-upload-live-preview small{display:block;overflow-wrap:anywhere;white-space:normal!important}
@media(max-width:900px){.smd-image-studio-dialog{height:calc(100vh - 10px);width:calc(100vw - 10px)!important}.smd-image-studio-grid{grid-template-columns:1fr!important;overflow:auto}.smd-image-tools{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid rgba(76,224,255,.14);overflow:visible}.smd-img-context,.smd-img-device,.smd-img-help{grid-column:1/-1}.smd-image-work{overflow:visible}.smd-image-canvas-wrap{min-height:280px!important}.smd-image-studio-dialog>footer{overflow-x:auto;flex-wrap:nowrap}.smd-image-studio-dialog>footer .button{flex:0 0 auto!important}}

/* V28.131 · Image Studio interactive */
.smd-image-studio-dialog{height:min(900px,calc(100vh - 24px))!important}
.smd-image-work{padding:12px!important;overflow:hidden!important;grid-template-rows:minmax(0,1fr) auto auto auto!important}
.smd-image-canvas-wrap{min-height:0!important;height:auto!important;overflow:hidden!important;touch-action:none}
.smd-image-canvas-wrap canvas{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;touch-action:none}
.smd-img-history,.smd-img-quick{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.smd-img-history button{flex:1}.smd-img-history button:disabled{opacity:.38;cursor:not-allowed}
.smd-img-quick{margin-top:10px}.smd-img-quick button{border:1px solid rgba(72,225,255,.25);background:#09202d;color:#eaffff;border-radius:9px;padding:8px 12px;font-weight:750}.smd-img-quick small{color:#91a9ba}
.smd-ai-mode{padding:10px;border:1px solid rgba(178,98,255,.28);border-radius:11px;background:rgba(38,14,58,.22)}.smd-ai-mode label{display:grid;gap:6px;font-size:.75rem;color:#dcbcff}.smd-ai-mode select{width:100%;background:#071925;color:#eaffff;border:1px solid rgba(101,225,255,.3);border-radius:9px;padding:9px}
@media(max-width:900px){.smd-image-work{overflow:visible!important}.smd-image-canvas-wrap{height:48vh!important}.smd-image-canvas-wrap canvas{height:100%!important}}

/* V28.137 · WhatsApp delivery/read status */
.smd-wa-delivery{display:inline-flex;align-items:center;gap:.35rem;margin:.45rem 0;padding:.38rem .65rem;border:1px solid rgba(23,217,255,.35);border-radius:999px;background:rgba(23,217,255,.06);font-size:.82rem}.smd-wa-read{color:#7dffbd;border-color:rgba(125,255,189,.55);box-shadow:0 0 12px rgba(125,255,189,.08)}.smd-wa-delivered{color:#25dcff}.smd-wa-sent{color:#d7e8ef}.smd-wa-failed{color:#ff9d6c;border-color:rgba(255,157,108,.55)}

/* V28.147 · flujo trabajo directo, validación y modales apilados */
.smd-field-error,.field.smd-field-error input,.field.smd-field-error select,.field.smd-field-error textarea{border-color:#ff4d67!important;box-shadow:0 0 0 2px rgba(255,77,103,.22),0 0 18px rgba(255,77,103,.18)!important}
.smd-promo-appointment.is-direct-work{border-color:rgba(15,255,255,.42)}
.smd-nested-layer{position:fixed;inset:0;z-index:10050;background:rgba(0,5,14,.62);display:grid;place-items:center;padding:24px}
.smd-nested-dialog{width:min(560px,94vw);max-height:86vh;overflow:auto;background:#061426;border:1px solid #0fffff;border-radius:20px;box-shadow:0 22px 70px rgba(0,0,0,.55);padding:22px}
.smd-nested-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.smd-nested-close{border:1px solid #31506a;background:#0b1b2c;color:#fff;border-radius:12px;width:42px;height:42px;font-size:24px}
.smd-payment-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}
.smd-payment-summary>div{padding:12px;border:1px solid #24485f;border-radius:12px;background:#071827}
.smd-payment-summary small{display:block;color:#9fb5c5}.smd-payment-summary strong{display:block;margin-top:4px}
.smd-no-review{padding:10px 12px;border:1px solid rgba(159,255,47,.35);border-radius:12px;color:#baff66;margin:10px 0}
@media(max-width:680px){.smd-payment-summary{grid-template-columns:1fr}}
/* V28.149 · Revisiones / trabajos / informes / mediciones */
.smd-review-card{position:relative;overflow:hidden}.smd-review-card.is-finished{box-shadow:0 0 0 1px rgba(15,255,255,.18),0 0 22px rgba(15,255,255,.08)}
.smd-report-table-wrap{overflow:auto;border:1px solid rgba(15,255,255,.32);border-radius:20px;background:rgba(3,15,28,.72)}
.smd-report-table{width:100%;border-collapse:collapse;min-width:850px}.smd-report-table th,.smd-report-table td{padding:14px 16px;border-bottom:1px solid rgba(120,210,255,.13);text-align:left;vertical-align:middle}.smd-report-table th{position:sticky;top:0;background:#071a2a;color:#53e7ff;letter-spacing:.08em}.smd-report-table td small{display:block;color:#9cb1c3;margin-top:4px}.smd-report-table .smd-mini-action{display:inline-flex;margin:2px;text-decoration:none}
.smd-measurements{margin:18px 0;padding:18px;border:1px solid rgba(15,255,255,.35);border-radius:18px;background:linear-gradient(145deg,rgba(7,32,49,.9),rgba(2,9,20,.88))}.smd-measure-tags{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0}.smd-measure-tag{border:1px solid #00dff2;background:#08283b;color:#eafcff;border-radius:999px;padding:9px 13px;cursor:grab}.smd-measure-tag small{color:#76f5ff}.smd-measure-row{display:grid;grid-template-columns:minmax(120px,1fr) 24px minmax(100px,160px) 70px 38px;align-items:center;gap:8px;margin:8px 0;padding:10px 12px;border:1px solid rgba(83,231,255,.22);border-radius:13px;background:rgba(0,8,18,.65)}.smd-measure-row input{min-width:0}.smd-measure-row button{border:1px solid rgba(255,100,100,.4);background:transparent;color:#ff8f8f;border-radius:9px;height:34px}.smd-protected-edit{box-shadow:0 0 18px rgba(180,255,46,.2)}
@media(max-width:720px){.smd-measure-row{grid-template-columns:1fr 20px minmax(90px,1fr) 55px 34px}}
/* Selects inside admin modals must not be visually clipped by short containers. */
.admin-editor-modal,.admin-editor-modal__body{overflow:visible}.admin-editor-modal__body{overflow-y:auto}.field select{position:relative;z-index:4}
\n/* SMDTRONIC: separación visual del encabezado de mediciones */\n.smd-measurements .row>div>.eyebrow{display:block;margin:0 0 7px 0;line-height:1.15}.smd-measurements .row>div>strong{display:block;line-height:1.25}\n
/* SMDTRONIC · estado de pago de revisión */
.smd-review-payment-state{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0;padding:14px 16px;border:1px solid rgba(255,190,0,.35);border-radius:16px;background:rgba(255,190,0,.06)}
.smd-review-payment-state>div{display:grid;gap:3px}.smd-review-payment-state small{letter-spacing:.12em;opacity:.72}.smd-review-payment-state strong{font-size:1rem}.smd-review-payment-state span{opacity:.82}
.smd-review-payment-state.is-paid{border-color:rgba(15,255,255,.45);background:rgba(15,255,255,.07)}.smd-review-payment-state.is-paid strong{color:#0fffff}.smd-review-paid-button{white-space:nowrap}.smd-online-awaiting{max-width:360px;font-size:.9rem;line-height:1.35}
@media(max-width:720px){.smd-review-payment-state{align-items:stretch;flex-direction:column}.smd-review-paid-button{width:100%}}

/* V28.151 · Auditoría visual transversal backend SMDTRONIC · 2026-10-10 */
#admin-section,.admin-editor-modal__dialog,.appointment-editor-dialog{min-width:0}
.admin-work-grid,.admin-appointment-grid{align-items:stretch}
.admin-work-card,.admin-appointment-card,.smd-quotation-card{min-width:0;overflow:hidden}
.admin-work-head,.admin-appointment-card-top,.smd-financial-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.admin-work-head .work-type-chip{flex:0 0 auto}
.admin-work-head .payment-state-chip{margin-left:auto;max-width:100%}
.payment-state-chip,.repair-state,.status,.work-type-chip{box-sizing:border-box;max-width:100%;white-space:normal!important;overflow-wrap:anywhere;text-align:center;line-height:1.2;padding-top:7px;padding-bottom:7px}
.payment-state-chip{display:inline-flex;align-items:center;justify-content:center;min-height:30px}
.admin-work-card h3,.admin-appointment-card h3,.admin-work-card p,.admin-appointment-card p,.admin-work-summary strong,.admin-appointment-card-info strong{overflow-wrap:anywhere;word-break:normal;min-width:0}
.admin-work-summary,.admin-appointment-card-info{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.admin-work-summary>span,.admin-appointment-card-info>span{min-width:0}
.admin-appointment-footer{gap:12px;flex-wrap:wrap;min-width:0}.admin-appointment-footer>*{min-width:0}.admin-appointment-open{margin-left:auto;white-space:nowrap}
.admin-editor-modal__dialog,.appointment-editor-dialog,.smd-nested-dialog{width:min(980px,calc(100vw - 28px));max-width:calc(100vw - 28px);max-height:calc(100vh - 28px);overflow:hidden}
.admin-editor-modal__body,.appointment-editor-dialog form{min-width:0;overflow-x:hidden;overflow-y:auto}
.admin-editor-modal .form-grid,.appointment-editor-dialog .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.admin-editor-modal .field,.appointment-editor-dialog .field{min-width:0}.admin-editor-modal input,.admin-editor-modal select,.admin-editor-modal textarea,.appointment-editor-dialog input,.appointment-editor-dialog select,.appointment-editor-dialog textarea{box-sizing:border-box;max-width:100%;width:100%}
.smd-modal-actions,.appointment-editor-actions,.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}.smd-modal-actions>* ,.appointment-editor-actions>* ,.form-actions>*{min-width:140px}
.smd-calendar-pop{width:min(430px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto}.smd-calendar-days{grid-template-columns:repeat(7,minmax(0,1fr))}.smd-calendar-days button{min-width:0}
.finance-table,.table-scroll,.smd-table-wrap{max-width:100%;overflow:auto}
@media(max-width:1180px){.admin-work-grid,.admin-appointment-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){.admin-work-grid,.admin-appointment-grid{grid-template-columns:1fr!important}.admin-work-head .payment-state-chip{margin-left:0}.admin-work-summary,.admin-appointment-card-info{grid-template-columns:1fr 1fr!important}.admin-editor-modal .form-grid,.appointment-editor-dialog .form-grid{grid-template-columns:1fr}.smd-modal-actions>*,.appointment-editor-actions>*,.form-actions>*{width:100%;min-width:0}.admin-appointment-open{margin-left:0}}
@media(max-width:460px){.admin-work-summary,.admin-appointment-card-info{grid-template-columns:1fr!important}.payment-state-chip,.repair-state,.status,.work-type-chip{font-size:.68rem}}

/* SMDTRONIC · Plantillas IA para cotizaciones e informes */
.smd-document-ai-box{margin:18px 0;padding:18px;border:1px solid rgba(15,255,255,.28);border-radius:16px;background:linear-gradient(145deg,rgba(4,24,38,.92),rgba(5,15,28,.96));box-shadow:inset 0 0 26px rgba(0,210,255,.04)}
.smd-document-ai-box legend{padding:0 9px;color:#b7ff39;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.smd-document-ai-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.smd-document-ai-grid .button{min-height:52px;white-space:normal;line-height:1.25}
@media(max-width:620px){.smd-document-ai-grid{grid-template-columns:1fr}}

/* SMDTRONIC V29 - revisión/trabajo workflow */
.smd-review-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;flex-wrap:nowrap!important}.review-done-chip{display:inline-flex;align-items:center;justify-content:center;color:#a8ff8a;border:1px solid rgba(123,255,83,.6);background:rgba(51,140,57,.13);border-radius:999px;padding:.35rem .7rem;font-size:.72rem;font-weight:900;letter-spacing:.08em;white-space:nowrap}.smd-review-payment-banner{width:max-content;max-width:100%;margin:.55rem auto .15rem;padding:.32rem .8rem;border-radius:999px;text-align:center;font-size:.72rem;font-weight:900;letter-spacing:.08em}.smd-review-payment-banner.is-pending{color:#ffd36e;border:1px solid rgba(255,190,62,.58);background:rgba(80,52,0,.18)}.smd-review-payment-banner.is-paid{color:#b7ff72;border:1px solid rgba(161,255,81,.58);background:rgba(39,92,22,.18)}
.smd-review-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:16px}.smd-review-pick-card{display:grid;gap:8px;text-align:left;padding:15px;border:1px solid rgba(83,234,255,.25);border-radius:16px;background:linear-gradient(145deg,rgba(9,27,42,.98),rgba(4,14,25,.98));color:#eaf8ff;cursor:pointer}.smd-review-pick-card:hover{border-color:#53eaff;box-shadow:0 0 24px rgba(83,234,255,.12)}.smd-review-pick-card .review-done-chip,.smd-review-pick-card .payment-state-chip{justify-self:start}.smd-source-review-summary,.smd-review-readonly{padding:14px 16px;border:1px solid rgba(83,234,255,.3);border-radius:15px;background:rgba(5,25,39,.72);margin-bottom:14px}.smd-source-review-summary>*{display:block}.smd-source-review-summary strong{font-size:1.08rem;margin:.25rem 0}.smd-review-readonly dl{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:.8rem 0 0}.smd-review-readonly dl>div{padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:10px}.smd-review-readonly dt{color:#7f9caf;font-size:.72rem}.smd-review-readonly dd{margin:.3rem 0 0;color:#effbff;white-space:pre-wrap}.smd-mini-action.is-static{cursor:default}.button.is-saved{box-shadow:0 0 18px rgba(123,255,83,.22)}
@media(max-width:760px){.smd-review-head{flex-wrap:wrap!important}.smd-review-readonly dl{grid-template-columns:1fr}}

.smd-document-template-status{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.smd-document-template-status>div{display:grid;gap:6px;padding:12px;border:1px solid rgba(83,234,255,.18);border-radius:12px;background:rgba(4,20,32,.55)}.smd-document-template-status span{color:#9db2c2;font-size:.78rem}.smd-deposit-method-help{padding:10px 12px;border-left:3px solid #53eaff;background:rgba(83,234,255,.07);color:#a9c4d5;font-size:.82rem;margin:.4rem 0 1rem}@media(max-width:650px){.smd-document-template-status{grid-template-columns:1fr}}
/* SMD11.5 CONFIGURATION STUDIO */
.smd-config-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.smd-config-tabs>button{border:1px solid rgba(55,218,255,.25);background:#0b2234;color:#dceefa;padding:14px 20px;border-radius:13px;font-weight:800;cursor:pointer}.smd-config-tabs>button.is-active{border-color:#28e6ff;color:#fff;box-shadow:0 0 20px rgba(40,230,255,.12);background:#0d3047}.smd-config-panel{min-height:300px}.smd-template-grid,.smd-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.smd-template-card,.smd-settings-grid>article{border:1px solid rgba(62,224,255,.25);border-radius:18px;padding:20px;background:linear-gradient(145deg,rgba(9,37,56,.92),rgba(3,17,29,.96));display:grid;gap:12px}.smd-template-card>span,.smd-settings-grid>article>span:first-child{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(59,225,255,.35);border-radius:14px;color:#52eaff}.smd-template-card>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.smd-coming{font-size:12px;color:#9eb2c1}.smd-icon-studio-layout{display:grid;grid-template-columns:minmax(250px,34%) 1fr;gap:14px;margin-top:16px}.smd-icon-targets,.smd-icon-catalog{border:1px solid rgba(64,224,255,.22);border-radius:16px;background:#061827;padding:14px}.smd-icon-scope{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.smd-icon-scope button{min-height:42px!important}.smd-icon-scope button.is-active{border-color:#a5ff2f!important;color:#dfffad!important}.smd-icon-target-search,.smd-icon-search{width:100%;margin-bottom:10px}.smd-icon-target-list{display:grid;gap:7px;max-height:480px;overflow:auto;padding-right:4px}.smd-icon-target-list>button{min-height:58px!important;display:grid!important;grid-template-columns:36px 1fr!important;grid-template-rows:auto auto!important;text-align:left!important;align-items:center!important}.smd-icon-target-list>button>span{grid-row:1/3}.smd-icon-target-list>button>b{font-size:13px}.smd-icon-target-list>button>small{font-size:10px;color:#7995a8}.smd-icon-target-list>button.is-active{border-color:#a5ff2f!important;box-shadow:0 0 15px rgba(165,255,47,.1)!important}.smd-lab-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.smd-lab-head h3{margin:2px 0}.smd-lab-head small{color:#62eaff;font-weight:900;letter-spacing:.12em}.smd-icon-lab-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;max-height:430px;overflow:auto;padding:2px}.smd-icon-lab-grid>button{min-height:104px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px}.smd-icon-lab-grid>button .smd-acc-icon{width:30px;height:30px}.smd-icon-lab-grid>button strong{font-size:12px}.smd-icon-lab-grid>button small{font-size:9px;color:#6f8fa3}.smd-icon-lab-grid>button.is-selected{border-color:#a5ff2f!important;box-shadow:inset 0 0 20px rgba(165,255,47,.07),0 0 16px rgba(165,255,47,.08)!important}.smd-icon-selection{margin-top:12px;padding:12px;border-radius:12px;background:#0a2234;color:#b9d5e5;display:flex;align-items:center;gap:8px}.smd-empty-config{padding:24px 12px;color:#9db4c4}.smd-acc-icon{display:inline-grid;place-items:center}.smd-acc-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}@media(max-width:850px){.smd-icon-studio-layout{grid-template-columns:1fr}.smd-icon-lab-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.smd-template-grid,.smd-settings-grid{grid-template-columns:1fr}}

/* SMDTRONIC 2026-10-11 · Icon Lab visual polish — no logic changes */
.smd-icon-target-list>button,
.smd-icon-lab-grid>button{
  background:linear-gradient(145deg,#0b2638,#061522)!important;
  border:1px solid rgba(66,226,255,.28)!important;
  color:#eafaff!important;
  border-radius:12px!important;
}
.smd-icon-target-list>button:hover,
.smd-icon-lab-grid>button:hover{
  background:linear-gradient(145deg,#0d3044,#071b2a)!important;
  border-color:#28e6ff!important;
  box-shadow:0 0 18px rgba(40,230,255,.12)!important;
}
.smd-icon-target-list>button.is-active,
.smd-icon-lab-grid>button.is-selected{
  background:linear-gradient(145deg,#0d3044,#071b2a)!important;
  border-color:#a5ff2f!important;
  box-shadow:inset 0 0 20px rgba(165,255,47,.06),0 0 16px rgba(165,255,47,.10)!important;
}
.smd-icon-target-list>button .smd-acc-icon,
.smd-icon-lab-grid>button .smd-acc-icon{color:#52eaff!important}
.smd-icon-target-list>button b,
.smd-icon-lab-grid>button strong{color:#f4fcff!important}
.smd-icon-target-list>button small,
.smd-icon-lab-grid>button small{color:#7fa4b8!important}

/* SMDTRONIC 2026-10-11 · estados independientes de Revisiones */
.smd-review-card.is-pending-review{border-color:rgba(83,234,255,.34)}
.smd-review-card.is-completed-unpaid{border-color:#ff5f9e!important;box-shadow:0 0 0 1px rgba(255,95,158,.18),0 0 24px rgba(255,95,158,.10)!important}
.smd-review-card.is-paid{border-color:#78ff63!important;box-shadow:0 0 0 1px rgba(120,255,99,.22),0 0 26px rgba(120,255,99,.12)!important}
.review-pending-chip{display:inline-flex;align-items:center;justify-content:center;color:#ffd36e;border:1px solid rgba(255,190,62,.65);background:rgba(80,52,0,.18);border-radius:999px;padding:.35rem .7rem;font-size:.72rem;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.review-done-chip.is-completed{color:#8dff7c;border-color:#ff5f9e;background:rgba(255,95,158,.08)}
.review-done-chip.is-paid{color:#8dff7c;border-color:rgba(120,255,99,.72);background:rgba(42,125,56,.13)}
.review-done-chip.is-paid b{color:#0fffff;font-size:1rem;margin-right:.35rem;text-shadow:0 0 10px rgba(15,255,255,.55)}

/* SMDTRONIC 2026-10-11 · revisión separada de trabajo + pago informativo */
#work-only-fields.smd-hidden,#work-only-finance.smd-hidden,.deposit-control.smd-hidden{display:none!important}
.smd-review-payment-info{margin:18px 0;padding:20px;border:1px solid rgba(63,255,124,.48);border-radius:18px;background:linear-gradient(135deg,rgba(8,43,48,.92),rgba(5,25,39,.96));box-shadow:0 0 0 1px rgba(15,255,255,.06) inset}
.smd-review-payment-info-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.smd-review-payment-info-head strong{display:block;color:#77ff9d;font-size:1.05rem;margin-top:4px}
.smd-review-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.smd-review-info-grid>div{padding:13px 14px;border:1px solid rgba(0,255,255,.16);border-radius:13px;background:rgba(2,15,27,.58)}
.smd-review-info-grid small{display:block;color:#8fb8d0;margin-bottom:5px}.smd-review-info-grid strong{color:#f2f8ff;overflow-wrap:anywhere}
@media(max-width:850px){.smd-review-info-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.smd-review-info-grid{grid-template-columns:1fr}.smd-review-payment-info-head{align-items:flex-start;flex-direction:column}}


/* V77.30 Contabilidad: controles reales, sin radio nativo; overlays funcionales */
.smd-accounting-kind{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:18px 0!important}
.smd-kind-option{position:relative!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:11px!important;width:100%!important;min-height:58px!important;padding:10px 15px!important;border:1px solid #24566b!important;border-radius:15px!important;background:linear-gradient(145deg,#071927,#0a2232)!important;color:#e9fbff!important;font-weight:850!important;letter-spacing:.03em!important;cursor:pointer!important;text-align:left!important}
.smd-kind-option i{display:grid!important;place-items:center!important;width:22px!important;height:22px!important;flex:0 0 22px!important;border:2px solid #347b91!important;border-radius:7px!important;background:#061521!important;color:#061521!important;font-style:normal!important;font-size:14px!important}
.smd-kind-option.is-active{border-color:#0fffff!important;color:#0fffff!important;background:#082c3d!important;box-shadow:0 0 18px #0fffff30!important}
.smd-kind-option.is-active i{border-color:#9cff00!important;background:#9cff00!important;box-shadow:inset 0 0 0 3px #08202d,0 0 12px #9cff0066!important}
.smd-calendar-layer{position:fixed!important;inset:0!important;z-index:30000!important;background:rgba(0,0,0,.76)!important;backdrop-filter:blur(8px)!important;display:grid!important;place-items:center!important;padding:18px!important}
.smd-calendar-pop,.smd-choice-pop{position:relative!important;z-index:30001!important;background:#061725!important;border:1px solid #0fffff!important;border-radius:22px!important;box-shadow:0 24px 80px #000c,0 0 40px #0fffff25!important}
.smd-calendar-pop{width:min(440px,96vw)!important;padding:16px!important}.smd-calendar-pop header{display:grid!important;grid-template-columns:44px 1fr 44px!important;align-items:center!important;text-align:center!important;gap:8px!important}.smd-calendar-pop header button{height:42px!important;border:1px solid #23657b!important;border-radius:12px!important;background:#0a2638!important;color:#0fffff!important;font-size:24px!important}.smd-calendar-week,.smd-calendar-days{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:5px!important;margin-top:10px!important}.smd-calendar-week b{text-align:center!important;color:#6f9bae!important;font-size:10px!important}.smd-calendar-days button{min-height:48px!important;border:1px solid #173f52!important;border-radius:12px!important;background:#091e2d!important;color:#fff!important}.smd-calendar-days button.is-today{border-color:#9cff00!important;color:#9cff00!important}.smd-calendar-days button.is-selected{border-color:#0fffff!important;background:#073244!important}.smd-calendar-pop footer{display:flex!important;justify-content:flex-end!important;gap:8px!important;margin-top:14px!important}
.smd-choice-pop{width:min(650px,96vw)!important;max-height:88vh!important;overflow:auto!important;padding:18px!important}.smd-choice-pop header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding-bottom:14px!important;border-bottom:1px solid #174258!important}.smd-choice-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;gap:10px!important;padding:16px 0!important}.smd-merchant-toolbar{display:grid!important;grid-template-columns:1fr auto!important;gap:10px!important;align-items:center!important;margin-top:14px!important}.smd-merchant-card{border:1px solid #1b4b60!important;border-radius:14px!important;background:#071d2b!important;overflow:hidden!important}.smd-merchant-pick{width:100%!important;min-height:56px!important;display:flex!important;align-items:center!important;gap:10px!important;padding:10px 13px!important;border:0!important;background:transparent!important;color:#fff!important;text-align:left!important}.smd-merchant-card-actions{display:flex!important;gap:6px!important;padding:0 9px 9px!important}.smd-merchant-card-actions button{flex:1!important;border:1px solid #24566b!important;border-radius:9px!important;background:#092637!important;color:#bfeaf4!important;padding:7px!important}.smd-nested-editor{position:absolute!important;inset:0!important;z-index:30005!important;display:grid!important;place-items:center!important;padding:18px!important;background:#000c!important;backdrop-filter:blur(7px)!important}
@media(max-width:700px){.smd-accounting-kind{grid-template-columns:1fr!important}.smd-merchant-toolbar{grid-template-columns:1fr!important}}

/* V77.32 - selector Comercio/Destino: modo edición real */
.smd-merchant-card-actions{display:none!important}
.smd-merchant-layer.is-editing .smd-merchant-card-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;padding:0 9px 9px!important}
.smd-merchant-layer:not(.is-editing) .smd-merchant-card-actions{display:none!important}
.smd-merchant-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:stretch!important}
.smd-merchant-toolbar [data-merchant-add]{grid-column:1/-1!important;width:100%!important}
.smd-merchant-edit-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:142px!important}
.smd-merchant-edit-toggle.is-active{border-color:#9cff00!important;color:#9cff00!important;box-shadow:0 0 16px #9cff0030!important}
.smd-merchant-layer.is-editing .smd-merchant-pick{cursor:default!important}
@media(max-width:700px){.smd-merchant-toolbar{grid-template-columns:minmax(0,1fr) auto!important}.smd-merchant-toolbar [data-merchant-add]{grid-column:1/-1!important}}
/* V77.35 · Apariencia editable de documentos PDF */
.smd-document-theme-settings{margin:18px 0 12px;padding:16px;border:1px solid rgba(15,255,255,.28);border-radius:16px;background:rgba(3,30,48,.62)}
.smd-document-theme-settings h3{margin:0 0 4px;color:#f4fbff}.smd-document-theme-settings .muted{margin:0 0 14px}
.smd-color-setting{display:grid;grid-template-columns:54px 1fr;gap:10px;align-items:center}.smd-color-setting input[type=color]{width:54px;height:44px;padding:3px;border:1px solid #0fffff;border-radius:10px;background:#061d2d;cursor:pointer}.smd-color-setting input[type=text]{min-width:0}
