@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:#f5f7fa;color:#142638;font-family:Segoe UI,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}img{max-width:100%;display:block}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #2563eb;outline-offset:4px}app-root{display:block}main,section,article,aside,figure{min-width:0}h1,h2,h3,dd,address{overflow-wrap:anywhere}@media(max-width:540px){input,select,textarea{font-size:16px}.brand{min-width:0;max-width:100%}.brand-name{overflow-wrap:anywhere}.confirmation{padding:1.25rem}.confirmation dd{margin-left:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:0s!important}}body{background:#f4f6f8}button,a{touch-action:manipulation}.mobile-appointments{display:none}app-admin-layout>header{background:linear-gradient(115deg,var(--brand-primary),#223e53);border-bottom:3px solid var(--brand-accent)}app-admin-layout .brand{display:flex;flex-direction:column}app-admin-layout main{padding-block:2.25rem}app-admin-layout .demo-banner{font-size:.7rem;padding:.5rem 1rem}app-admin-layout>header button{border-radius:30px;background:#ffffff12}app-admin-dashboard .page-heading{padding-bottom:1rem}app-admin-dashboard .demo-tools{background:radial-gradient(circle at 95% 0,rgba(255,255,255,.0941176471),transparent 45%),var(--brand-primary)}app-admin-dashboard .stats>div{box-shadow:0 8px 25px #14263806}app-admin-dashboard .stats strong{font-size:2.5rem}app-admin-dashboard .table-container{box-shadow:0 10px 35px #14263805}app-admin-dashboard td[data-label=D\e9tail] a,app-admin-dashboard td[data-label=Detalle] a{display:inline-flex;border:1px solid #dce3e9;padding:.5rem .7rem;border-radius:7px;text-decoration:none;white-space:nowrap}app-appointment-detail .appointment-summary{box-shadow:0 12px 30px #14263812}app-appointment-detail .management{border-top:3px solid var(--brand-accent)}app-appointment-detail .state-option{min-height:54px}app-public-layout .site-header{box-shadow:0 3px 18px #14263804}app-home .hero{background:radial-gradient(ellipse at 75% 30%,#e6edf1,transparent 60%),#f5f7fa}app-home .hero-visual img{border-radius:90px 16px 16px;box-shadow:0 20px 45px #14263815}app-home-services .service-card{box-shadow:0 6px 22px #14263804;transition:transform .2s,box-shadow .2s}app-home-services .service-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #1426380d}app-home-services .service-icon{background:#fff1e5}app-home-testimonials .testimonial-card{border-top:3px solid #dce5eb;box-shadow:0 6px 25px #14263805}app-home-contact .contact-panel{background:#fff;border-top:4px solid var(--brand-accent);box-shadow:0 10px 35px #14263808}app-appointment-request form{border-radius:18px;box-shadow:0 12px 40px #14263806}app-appointment-request legend span{display:inline-grid;place-items:center;width:30px;height:30px;background:#fff1e5;color:#142638;border-radius:9px}app-appointment-request input,app-appointment-request select,app-appointment-request textarea{background:#fafbfd;border-color:#c7d3de;border-radius:8px}app-appointment-request aside{border-radius:18px}app-admin-login .login-card{box-shadow:0 30px 80px #0003;border-top:5px solid var(--brand-accent)}@media(max-width:760px){app-admin-layout>header{gap:1rem;padding:1rem}app-admin-layout>header .brand{font-size:1.25rem}app-admin-layout>header nav{gap:.65rem}app-admin-layout>header nav a{font-size:.7rem}app-admin-layout>header button{font-size:.7rem;min-height:44px;padding:.5rem .75rem}app-admin-layout main{width:calc(100% - 2rem);padding-block:1.5rem}app-admin-dashboard h1{font-size:2rem;line-height:1.1}app-admin-dashboard .primary-link{width:100%;justify-content:space-between}app-admin-dashboard .demo-tools{gap:1rem;border-left-width:3px;padding:1.25rem}app-admin-dashboard .demo-tools h2{font-size:1.15rem}app-admin-dashboard .demo-action{width:100%}app-admin-dashboard .demo-action button{width:100%;min-height:48px}app-admin-dashboard .stats{gap:.65rem;margin-block:1.25rem}app-admin-dashboard .stats>div{padding:1rem}app-admin-dashboard .stats strong{font-size:2rem;margin:.4rem 0}app-admin-dashboard .filters{gap:.75rem;padding:1rem}app-admin-dashboard .filters>div{flex:1 1 120px;min-width:0}app-admin-dashboard .filters button{width:100%;border:0;background:#edf1f5}app-admin-dashboard .table-container{display:none}.mobile-appointments{display:grid;gap:1rem}.appointment-card{padding:1.2rem;background:#fff;border:1px solid #dfe6ed;border-radius:16px;box-shadow:0 4px 18px #14263804}.card-client{display:flex;align-items:center;gap:.8rem}.client-avatar{flex:0 0 42px;height:42px;display:grid;place-items:center;background:#eaf0f4;border-radius:13px;font-size:1rem;font-weight:750}.card-client h2{font-size:.95rem;margin:0;line-height:1.5}.card-client p{color:#647487;font-size:.75rem;margin:.2rem 0 0}.card-meta{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap;margin-block:1.1rem .8rem}.card-date{font-size:.8rem;color:#526171}.card-date strong{margin-left:.5rem;color:#142638}.card-service{font-size:.85rem;font-weight:600;margin:.5rem 0 1.1rem}.card-detail{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding:.8rem 1rem;background:#f0f4f7;color:#142638;border-radius:9px;font-size:.8rem;font-weight:700;text-decoration:none}app-appointment-detail .detail-heading{align-items:flex-start;gap:1rem}app-appointment-detail .appointment-summary{gap:1rem;padding:1.4rem;border-radius:16px}app-appointment-detail .panel{padding:1.25rem;border-radius:16px}app-appointment-detail .state-option{min-height:56px;font-size:.9rem;border-radius:10px}app-appointment-detail .reference{font-size:.65rem}app-home .hero-visual img{border-top-left-radius:50px}app-appointment-request .page-heading{margin-bottom:1.5rem}}@media(prefers-reduced-motion:reduce){app-home-services .service-card:hover{transform:none}}app-appointment-request .booking-photo{width:calc(100% + 4rem);max-width:none;margin:-2rem -2rem 1.5rem;height:200px;object-fit:cover;border-radius:18px 18px 0 0}app-admin-login .login-page{background:linear-gradient(105deg,#142638ed,#142638c9),url(/images/workshop-hero.png) center/cover}@media(max-width:540px){app-appointment-request .booking-photo{width:calc(100% + 3rem);margin:-1.5rem -1.5rem 1.5rem;height:170px}}app-appointment-detail .detail-heading{background:#fff;color:var(--brand-primary);border:1px solid #e0e6ec;border-radius:16px;padding:1.5rem}app-home-contact .contact-map{width:min(100% - 3rem,1200px);margin:0 auto 3rem}app-home-contact .map-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.2rem}app-home-contact .map-heading p{font-size:.65rem;letter-spacing:.14em;font-weight:750}app-home-contact .map-heading h3{font-size:1.4rem;margin:.5rem 0}app-home-contact .map-heading a{color:inherit;font-size:.8rem;text-underline-offset:.3rem}app-home-contact iframe{display:block;width:100%;height:360px;border:1px solid #dce3e9;border-radius:16px}app-home-contact .map-note{color:#647487;font-size:.7rem;line-height:1.7}@media(max-width:760px){app-home-contact .contact-map{width:calc(100% - 2rem)}app-home-contact iframe{height:290px}app-appointment-detail .detail-heading{padding:1.2rem}}app-admin-layout .workspace-toolbar{background:#fff;color:#142638;border-bottom:1px solid #e1e7ee}app-admin-layout .admin-workspace main{margin:0}app-admin-dashboard .stats>div{border-top-width:1px;position:relative;overflow:hidden}app-admin-dashboard .stats>div:after{content:"";position:absolute;right:-12px;bottom:-18px;width:85px;height:85px;border:15px solid rgba(20,38,56,.0156862745);border-radius:50%;pointer-events:none}app-admin-dashboard .stat-pending{background:linear-gradient(120deg,#fff,#fffaf0)}app-admin-dashboard .stat-confirmed{background:linear-gradient(120deg,#fff,#f3f8ff)}app-admin-dashboard .stat-completed{background:linear-gradient(120deg,#fff,#f2faf5)}app-admin-dashboard .filters{border:0;box-shadow:0 2px 12px #14263804}app-admin-dashboard .stats small{font-weight:650}app-admin-dashboard .primary-link{border-radius:9px}app-appointment-detail .detail-heading{border:0;box-shadow:0 6px 25px #14263804}app-appointment-detail .appointment-summary{background:linear-gradient(115deg,var(--brand-primary),#264459)}@media(min-width:901px)and (max-width:1200px){app-admin-dashboard .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){app-admin-layout .admin-workspace main{width:100%;padding:1rem}}app-admin-layout .workspace-note{border:1px solid rgba(255,255,255,.1411764706);border-radius:10px;padding:1rem;font-size:.7rem;line-height:1.7}app-admin-layout .workspace-note p{color:#b7c7d4;font-size:.65rem;margin-bottom:0}app-admin-layout .sidebar-bottom{margin-top:auto}app-admin-layout .sidebar-bottom button{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:1rem;border:0;color:#d3dde6;background:transparent;padding:.8rem;font-size:.8rem;cursor:pointer}app-admin-layout .workspace-footer{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 2.5rem;border-top:1px solid #e1e7ee;color:#647487;font-size:.65rem}
