*{box-sizing:border-box}body,html{min-height:100%;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;background:#f5f7fb;color:#111827}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%}.site-shell{display:flex;flex-direction:column;min-height:100vh}.site-main{flex:1 1}.container{width:min(1180px,calc(100% - 32px));margin:0 auto}.page-section{padding:40px 0}.card{padding:24px;background:#fff;border-radius:20px;box-shadow:0 10px 30px rgba(15,23,42,.08)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:#0f172a;border-bottom:1px solid hsla(0,0%,100%,.08)}.nav-wrap{display:flex;justify-content:space-between;gap:24px;min-height:82px}.brand,.nav-wrap{align-items:center}.brand{display:inline-flex;flex-shrink:0;min-width:0}.brand-logo{width:auto;height:54px;object-fit:contain;display:block}.nav-menu{display:flex;align-items:center;gap:18px}.nav-dropdown-trigger,.nav-logout,.nav-menu,.nav-menu>a{color:#fff;font-weight:600}.nav-dropdown-trigger,.nav-menu>a{display:inline-flex;align-items:center;min-height:42px}.nav-dropdown{position:relative;display:flex;align-items:center}.nav-dropdown-trigger{border:0;background:transparent;cursor:pointer;padding:0}.nav-caret{display:inline-block;margin-left:8px;transition:transform .2s ease}.nav-caret.is-open{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:calc(100% + 12px);left:0;min-width:220px;padding:10px;border-radius:16px;background:#fff;box-shadow:0 18px 40px rgba(15,23,42,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}.nav-dropdown-menu.is-open{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown-link{display:block;padding:12px 14px;border-radius:12px;color:#111827;font-weight:600}.nav-dropdown-link:hover{background:#f3f4f6}.nav-logout{border:0;background:transparent;cursor:pointer;padding:0}.footer-link:hover,.nav-dropdown-trigger:hover,.nav-logout:hover,.nav-menu a:hover{opacity:.85}.nav-toggle{display:none;position:relative;width:46px;height:46px;padding:0;border:0;border-radius:12px;background:transparent;cursor:pointer;flex-shrink:0}.nav-toggle span{display:block;width:24px;height:2px;margin:5px auto;border-radius:999px;background:#fff;transition:transform .2s ease,opacity .2s ease}.nav-toggle.is-open span:first-child{transform:translateY(7px) rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav-overlay{position:fixed;inset:0;z-index:120;background:rgba(15,23,42,.56);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.mobile-nav-overlay.is-open{opacity:1;visibility:visible}.mobile-nav-modal{position:fixed;top:0;right:0;z-index:130;width:min(380px,100%);height:100dvh;padding:22px 18px 28px;background:#0f172a;color:#fff;box-shadow:-18px 0 40px rgba(15,23,42,.28);transform:translateX(100%);transition:transform .28s ease;overflow-y:auto}.mobile-nav-modal.is-open{transform:translateX(0)}.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.mobile-nav-close{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;border-radius:12px;background:hsla(0,0%,100%,.08);color:#fff;font-size:20px;cursor:pointer}.mobile-nav-menu{display:grid;grid-gap:10px;gap:10px}.mobile-nav-group-trigger,.mobile-nav-logout,.mobile-nav-menu a{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;padding:0 14px;border-radius:14px;color:#fff;font-weight:600;background:hsla(0,0%,100%,.05)}.mobile-nav-group{display:grid;grid-gap:10px;gap:10px}.mobile-nav-group-trigger,.mobile-nav-logout{border:0;cursor:pointer;text-align:left}.mobile-nav-submenu{display:none;padding-left:10px}.mobile-nav-submenu.is-open{display:grid;grid-gap:8px;gap:8px}.mobile-nav-submenu a{min-height:46px;font-size:15px;background:hsla(0,0%,100%,.08)}@media (max-width:992px){.nav-wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:12px;min-height:74px}.nav-menu{display:none}.brand{display:flex;align-items:center;min-width:0}.brand-logo{height:42px;width:auto}.nav-toggle{display:flex;align-items:center;justify-content:center;flex-shrink:0;flex-direction:column!important}}@media (min-width:993px){.mobile-nav-modal,.mobile-nav-overlay{display:none}}@media (max-width:576px){.mobile-nav-modal{padding:18px 14px 24px}.brand-logo{height:38px}}.site-footer{margin-top:auto;background:#0f172a;color:#fff;padding:0}.footer-wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;grid-gap:24px;gap:24px;min-height:88px;padding-top:20px;padding-bottom:20px}.footer-column{display:flex;align-items:center;justify-content:center}.footer-text{margin:0;text-align:center;font-size:15px;line-height:1.5;color:#fff}.footer-link{font-weight:600;color:#fff;transition:opacity .2s ease}.footer-socials{display:flex;gap:18px;margin:0;padding:0;list-style:none}.footer-social-link,.footer-socials{align-items:center;justify-content:center}.footer-social-link{display:inline-flex;width:24px;height:24px;color:#fff;transition:opacity .2s ease,transform .2s ease}.footer-social-link:hover{opacity:.85;transform:translateY(-1px)}.footer-social-icon{display:block;width:24px;height:24px;fill:currentColor}@media (max-width:992px){.footer-wrap{grid-template-columns:1fr;gap:16px;padding-top:22px;padding-bottom:22px}.footer-column{justify-content:center}.footer-text{font-size:14px}}@media (max-width:576px){.footer-wrap{gap:14px;min-height:auto;padding-top:18px;padding-bottom:18px}.footer-text{font-size:14px;line-height:1.4}.footer-socials{gap:16px}.footer-social-icon,.footer-social-link{width:22px;height:22px}}.auth-wrap{width:min(460px,calc(100% - 32px));margin:48px auto}.auth-wrap-wide{width:min(780px,calc(100% - 32px))}.auth-title{margin:0 0 20px;font-size:32px;font-weight:800}.auth-links-row{margin-top:16px;text-align:center}.form-grid{display:grid;grid-gap:16px;gap:16px}.form-field{display:grid;grid-gap:8px;gap:8px}.form-label{font-size:14px;font-weight:700;color:#374151}.catalog-input,.form-input,.form-select,.hero-input,.textarea-input{width:100%;border:1px solid #d1d5db;border-radius:12px;background:#fff}.catalog-input,.form-input,.form-select,.hero-input{min-height:46px;padding:0 14px}.textarea-input{min-height:120px;padding:14px;resize:vertical}.catalog-input:focus,.form-input:focus,.form-select:focus,.hero-input:focus,.textarea-input:focus{outline:none;border-color:#2563eb}.form-error,.form-success{font-size:14px;font-weight:600}.form-error{color:#b91c1c}.form-success{color:#166534}.checkbox-line{display:flex;align-items:center;gap:10px;font-weight:600}.input-with-suffix{position:relative}.has-suffix{padding-right:58px}.input-suffix{position:absolute;top:50%;right:14px;transform:translateY(-50%);color:#64748b;font-size:14px;font-weight:700;pointer-events:none}.back-link-button,.catalog-button,.danger-button,.form-button,.hero-button,.panel-link-button,.upload-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:0;border-radius:12px;color:#fff;font-weight:700;cursor:pointer}.back-link-button,.catalog-button,.form-button,.hero-button,.panel-link-button,.upload-button{background:#2563eb}.danger-button{background:#dc2626}.danger-button:disabled,.form-button:disabled,.upload-button:disabled{opacity:.65;cursor:not-allowed}.hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:520px;background:linear-gradient(135deg,rgba(15,23,42,.72),rgba(37,99,235,.42)),url(/hero.jpg) 50% /cover no-repeat;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at center,hsla(0,0%,100%,.08),transparent 55%)}.hero-content{position:relative;z-index:2;width:100%}.hero-box{width:min(900px,100%);margin:0 auto;padding:72px 0;text-align:center;color:#fff}.hero-title{margin:0 0 18px;font-size:clamp(34px,5vw,60px);line-height:1.05;font-weight:800;letter-spacing:-.02em}.hero-text{width:min(760px,100%);margin:0 auto 28px;font-size:clamp(17px,2vw,21px);line-height:1.65;color:hsla(0,0%,100%,.94)}.catalog-search,.hero-search{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px}.hero-search .hero-input{width:min(520px,100%);min-height:54px;padding:0 18px;border:1px solid hsla(0,0%,100%,.28);border-radius:14px;background:hsla(0,0%,100%,.96);box-shadow:0 10px 30px rgba(15,23,42,.18)}.hero-search .hero-button{min-height:54px;padding:0 24px;border-radius:14px;box-shadow:0 10px 24px rgba(37,99,235,.28)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.section-head h1,.section-head h2{margin:0;font-size:clamp(28px,4vw,38px)}.section-link{color:#2563eb;font-weight:700}.company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:22px;gap:22px}.company-card{overflow:hidden;background:#fff;border-radius:18px;box-shadow:0 10px 28px rgba(15,23,42,.08);transition:transform .2s ease,box-shadow .2s ease}.company-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,23,42,.12)}.company-cover{height:170px;background-color:#e5e7eb;background-position:50%;background-size:cover;background-repeat:no-repeat}.company-body{display:flex;align-items:center;gap:14px;padding:18px}.company-logo{width:62px;height:62px;object-fit:cover;border:1px solid #e5e7eb;border-radius:14px;background:#fff}.company-info h3{margin:0 0 6px;font-size:18px}.company-info p{margin:0 0 8px;color:#6b7280}.company-category-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:12px;font-weight:800}.company-detail{grid-gap:24px}.company-detail,.company-detail-booking{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,420px);align-items:start;gap:24px}.company-detail-booking{grid-template-areas:"main side" "bottom bottom";grid-gap:24px}.company-detail-main{grid-area:main;display:grid;grid-gap:24px;gap:24px}.company-detail-side{grid-area:side;display:grid;grid-gap:24px;gap:24px}.company-detail-bottom{grid-area:bottom;width:100%}.company-detail-cover{min-height:280px;border-radius:24px;background-color:#e5e7eb;background-position:50%;background-size:cover;background-repeat:no-repeat}.company-detail-head{display:flex;align-items:center;gap:18px}.company-detail-logo{width:110px;height:110px;object-fit:cover;border:1px solid #e5e7eb;border-radius:20px;background:#fff}.company-detail-title{margin:0 0 8px;font-size:clamp(28px,4vw,40px)}.company-detail-subtitle{margin:0;color:#475569;font-weight:600}.detail-heading{margin:0 0 18px;font-size:24px;font-weight:800}.company-summary-card{padding:28px}.company-summary{display:flex;align-items:center;gap:20px}.company-summary-logo{width:110px;height:110px;object-fit:cover;border:1px solid #e5e7eb;border-radius:20px;background:#fff;flex-shrink:0}.company-summary-content{display:grid;grid-gap:8px;gap:8px}.company-summary-line{margin:0;color:#475569;font-weight:600}.company-summary-description{margin:4px 0 0;color:#334155;line-height:1.65}.service-list{display:grid;grid-gap:14px;gap:14px}.service-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid #e5e7eb;border-radius:16px;background:#f8fafc}.service-item p{margin:6px 0 0;color:#64748b}.service-price{white-space:nowrap;color:#1d4ed8;font-weight:800}.service-inline-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:#eff6ff;color:#1d4ed8;font-weight:800}.service-cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.service-card{padding:18px;border:1px solid #e5e7eb;border-radius:18px;background:#f8fafc}.service-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.service-card-top h3{margin:0;font-size:18px}.service-price-pill{display:inline-flex;white-space:nowrap;padding:8px 12px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-weight:800}.service-meta{margin:0;color:#64748b;font-weight:600}.employee-grid,.panel-grid-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.employee-card,.panel-card-edit{padding:18px;border:1px solid #e5e7eb;border-radius:18px;background:#f8fafc}.employee-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:10px}.employee-card strong{display:block;margin:0}.employee-photo{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center top;margin:0;border-radius:18px}.employee-card-preview{display:flex;justify-content:center;margin-bottom:14px}.employee-photo-small{width:120px;height:120px;margin-bottom:0}.booking-box{position:static;padding:24px;background:#fff;border-radius:24px;box-shadow:0 10px 28px rgba(15,23,42,.08)}.booking-full-layout{display:grid;grid-gap:18px;gap:18px;width:100%}.booking-auth-box{display:grid;grid-gap:14px;gap:14px}.booking-auth-box p{margin:0;color:#475569;font-weight:600}.booking-auth-actions{display:flex;flex-wrap:wrap;gap:12px}.appointment-lines{display:grid;grid-gap:8px;gap:8px;margin-bottom:12px;color:#334155}.bookings-list{display:grid;grid-gap:12px;gap:12px}.booking-item{display:grid;grid-template-columns:minmax(120px,180px) repeat(4,minmax(0,1fr));align-items:center;grid-gap:10px;gap:10px;padding:14px;border:1px solid #e5e7eb;border-radius:16px;background:#f8fafc}.status-pill{display:inline-flex;width:-moz-fit-content;width:fit-content;margin-bottom:12px;padding:8px 12px;border-radius:999px;font-weight:800}.status-pill-success{background:#dcfce7;color:#166534}.status-pill-danger{background:#fee2e2;color:#b91c1c}.professional-actions{display:grid;grid-gap:12px;gap:12px}.category-result-group{margin-top:12px}.availability-card{border-radius:24px;width:100%}.availability-groups{display:grid;grid-gap:16px;gap:16px}.availability-group{display:grid;grid-gap:10px;gap:10px}.availability-group-title{margin:0;font-size:16px;font-weight:800;color:#0f172a}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.calendar-nav-button{width:40px;height:40px;border:1px solid #dbe3ee;border-radius:12px;background:#fff;font-size:18px;font-weight:700;cursor:pointer}.calendar-nav-button:hover{background:#f8fafc}.calendar-title{color:#0f172a;text-transform:capitalize}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:8px}.calendar-weekdays span{text-align:center;font-size:12px;font-weight:700;color:#64748b}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px}.calendar-day,.calendar-empty-cell{min-height:42px}.calendar-day{border:1px solid #dbe3ee;border-radius:12px;background:#fff;color:#0f172a;font-weight:700;cursor:pointer}.calendar-day:hover{background:#eff6ff;border-color:#93c5fd}.calendar-day-active{background:#2563eb;color:#fff;border-color:#2563eb}.calendar-day-disabled{border-color:#e5e7eb;background:#f8fafc;color:#94a3b8;cursor:not-allowed}.calendar-day-holiday{background:#fff1f2;border-color:#fecaca;color:#b91c1c}.slots-grid,.slots-grid-wide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.slot-button{min-height:42px;padding:10px 12px;border:1px solid #dbe3ee;border-radius:12px;background:#fff;color:#0f172a;font-weight:700;cursor:pointer;line-height:1.2}.slot-button:hover{background:#eff6ff;border-color:#93c5fd}.slot-button-active{background:#2563eb;color:#fff;border-color:#2563eb}.panel-grid{display:grid;grid-gap:20px;gap:20px}.panel-topbar{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:16px}.panel-company-selector{min-width:min(100%,320px);flex:1 1}.panel-topbar-actions{display:flex;flex-wrap:wrap;gap:12px}.panel-company-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;grid-gap:20px;gap:20px}.panel-image-stack{display:grid;grid-gap:16px;gap:16px}.panel-image-card,.upload-preview-card{display:grid;grid-gap:12px;gap:12px;padding:16px;border:1px solid #e5e7eb;border-radius:18px;background:#f8fafc}.panel-company-fields{display:grid;grid-gap:16px;gap:16px}.mini-upload-preview-logo,.panel-company-logo-preview{width:120px;height:120px;object-fit:cover;border:1px solid #dbe3ee;border-radius:18px;background:#fff}.mini-upload-preview-cover,.panel-company-cover-preview{width:100%;min-height:180px;border:1px solid #dbe3ee;border-radius:18px;background-color:#e5e7eb;background-position:50%;background-size:cover;background-repeat:no-repeat}.panel-card-title{margin:0 0 16px;font-size:20px;font-weight:800;color:#0f172a}.panel-card-actions{display:flex;flex-wrap:wrap;gap:10px}.panel-card-actions .danger-button,.panel-card-actions .form-button{flex:1 1 180px}.accordion-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:0;border:0;background:transparent;color:#0f172a;font-size:20px;font-weight:800;text-align:left;cursor:pointer}.accordion-toggle:hover{opacity:.86}.panel-inline-create{padding:20px}.panel-inline-create-grid{display:grid;grid-template-columns:120px minmax(0,1fr);grid-gap:18px;gap:18px;align-items:center}.panel-inline-avatar{display:flex;justify-content:center}.panel-inline-fields,.schedule-row-card{display:grid;grid-gap:14px;gap:14px}.schedule-row-card{padding:16px;border:1px solid #e5e7eb;border-radius:16px;background:#f8fafc}.schedule-day-title{font-size:18px;color:#0f172a}.schedule-period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.schedule-period{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid #dbe3ee;border-radius:14px;background:#fff}.schedule-period-label{font-weight:800;color:#1e3a8a}.schedule-time-row{display:grid;grid-gap:6px;gap:6px}.inline-upload-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.upload-preview-block{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.page-inline-actions{display:flex;justify-content:flex-start;margin-bottom:16px}.holiday-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;grid-gap:16px;gap:16px}.delete-company-box{margin-top:18px;padding:18px;border:1px solid #fecaca;border-radius:18px;background:#fff1f2}@media (max-width:980px){.company-grid,.employee-grid,.panel-grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.company-detail,.company-detail-booking,.panel-company-layout{grid-template-columns:1fr}.company-detail-booking{grid-template-areas:"main" "side" "bottom"}.booking-item,.slots-grid,.slots-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.company-detail-head{flex-direction:column;align-items:flex-start}}@media (max-width:640px){.hero{min-height:440px}.hero-box{width:90%;padding:52px 0}.hero-search{flex-direction:column;align-items:stretch}.hero-search .hero-button,.hero-search .hero-input{width:100%}.booking-item,.company-grid,.employee-grid,.holiday-form,.panel-grid-cards,.service-cards-grid,.slots-grid,.slots-grid-wide,.upload-preview-block{grid-template-columns:1fr}.booking-auth-actions,.company-body,.company-summary,.inline-upload-row,.service-inline-meta,.service-item{flex-direction:column;align-items:flex-start}.calendar-grid,.calendar-weekdays{gap:6px}.calendar-day,.calendar-empty-cell{min-height:38px}.panel-topbar{align-items:stretch}.panel-card-actions,.panel-topbar-actions{flex-direction:column}.booking-auth-actions .back-link-button,.booking-auth-actions .form-button,.inline-upload-row .danger-button,.inline-upload-row .form-button,.inline-upload-row .upload-button,.panel-card-actions .danger-button,.panel-card-actions .form-button,.panel-topbar-actions,.panel-topbar-actions .danger-button,.panel-topbar-actions .panel-link-button{width:100%}.panel-card-actions .danger-button,.panel-card-actions .form-button{flex:1 1 auto}.inline-upload-row{align-items:stretch}.panel-inline-create-grid{grid-template-columns:1fr}.panel-inline-avatar{justify-content:flex-start}.schedule-period-grid{grid-template-columns:1fr}}@media (max-width:992px){.hero-box{padding-top:56px;padding-bottom:56px}}.scroll-top-button{position:fixed;right:20px;bottom:20px;width:48px;height:48px;border:none;border-radius:999px;background:#0f172a;color:#fff;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.18);z-index:9999;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,opacity .2s ease,background .2s ease}.scroll-top-button:hover{transform:translateY(-2px);background:#1e293b}.scroll-top-button:active{transform:translateY(0)}.scroll-top-button:focus-visible{outline:2px solid #fff;outline-offset:3px}@media (max-width:768px){.scroll-top-button{right:16px;bottom:16px;width:44px;height:44px;font-size:20px}}.form-textarea{width:100%;min-height:120px;padding:14px;border:1px solid #d1d5db;border-radius:12px;background:#fff;resize:vertical}.form-textarea:focus{outline:none;border-color:#2563eb}.form-field-full{grid-column:1/-1}.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;font-weight:700;cursor:pointer}.secondary-button:hover{background:#f8fafc}.panel-citas-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-citas-link{white-space:nowrap}.employee-grid,.panel-grid-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.employee-card,.panel-card-edit{padding:14px;border-radius:16px}.appointments-owner-shell{width:min(1440px,calc(100% - 32px));margin:0 auto}.appointments-owner-card{display:grid;grid-gap:20px;gap:20px}.appointments-owner-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.appointments-owner-topbar-controls{display:flex;gap:12px;align-items:flex-end}.appointments-owner-select-field{min-width:280px}.appointments-owner-grid{display:grid;grid-template-columns:minmax(320px,1.1fr) minmax(420px,1.5fr) minmax(320px,1fr);grid-gap:18px;gap:18px;align-items:start}.appointments-calendar-column,.appointments-day-column,.appointments-form-card{padding:18px;border:1px solid #e5e7eb;border-radius:20px;background:#f8fafc}.appointments-calendar-head,.appointments-day-summary,.appointments-timeline-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.appointments-month-title{text-transform:capitalize}.appointments-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px;margin:18px 0 10px}.appointments-weekdays span{text-align:center;font-size:12px;font-weight:800;color:#64748b}.appointments-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px}.appointments-day-cell{min-height:88px;padding:10px;border:1px solid #dbe3ee;border-radius:14px;background:#fff;display:grid;align-content:flex-start;grid-gap:4px;gap:4px;text-align:left;cursor:pointer}.appointments-day-cell.is-outside{opacity:.45}.appointments-day-cell.is-disabled{background:#e5e7eb;border-color:#d1d5db;color:#6b7280}.appointments-day-cell.is-holiday{background:#fee2e2;border-color:#fecaca;color:#991b1b}.appointments-day-cell.is-selected{border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.appointments-day-number{font-size:16px;font-weight:800}.appointments-day-count,.appointments-day-flag{font-size:11px;font-weight:700}.appointments-day-flag-muted{color:#6b7280}.appointments-timeline-box,.appointments-working-hours-box{margin-top:16px;padding:16px;border:1px solid #e5e7eb;border-radius:16px;background:#fff}.appointments-working-hours-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.appointments-working-hours-list span{padding:8px 12px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-weight:800}.appointments-time-rows{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.appointments-time-row{display:grid;grid-template-columns:70px 1fr;grid-gap:12px;gap:12px;align-items:start}.appointments-time-label{padding-top:10px;font-size:13px;font-weight:800;color:#475569}.appointments-time-content{display:grid;grid-gap:10px;gap:10px}.appointments-empty-day,.appointments-empty-slot{padding:14px;border:1px dashed #cbd5e1;border-radius:14px;color:#64748b;background:#fff}.appointments-event-card{padding:14px;border-radius:16px;border:1px solid #dbeafe;background:#eff6ff}.appointments-event-card.is-block{border-color:#fecaca;background:#fff1f2}.appointments-event-card.is-manual{border-color:#ddd6fe;background:#f5f3ff}.appointments-event-actions,.appointments-event-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.appointments-event-actions{margin-top:12px}@media (max-width:1180px){.appointments-owner-grid{grid-template-columns:1fr}.employee-grid,.panel-grid-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){.appointments-owner-shell{width:min(100%,calc(100% - 20px))}.appointments-day-summary,.appointments-owner-topbar,.panel-citas-card-head{flex-direction:column;align-items:stretch}.appointments-owner-select-field{min-width:0}.appointments-time-row{grid-template-columns:1fr}.appointments-calendar-grid{gap:6px}.appointments-day-cell{min-height:60px;padding:8px}.employee-grid,.panel-grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.employee-grid,.panel-grid-cards{grid-template-columns:repeat(1,minmax(0,1fr))}}.appointments-calendar-column-full{width:100%}.appointments-bottom-grid{display:grid;grid-template-columns:minmax(420px,1.25fr) minmax(320px,.95fr);grid-gap:18px;gap:18px;align-items:start}.appointments-day-toolbar{margin-top:16px}.appointments-inline-filter-field{max-width:260px}@media (max-width:860px){.appointments-inline-filter-field,.appointments-owner-select-field{min-width:100%}}.appointments-day-cell:disabled{cursor:not-allowed}.appointments-day-cell.is-disabled,.appointments-day-cell.is-holiday{pointer-events:none}.appointments-day-cell.is-disabled.is-selected,.appointments-day-cell.is-holiday.is-selected{box-shadow:none}.appointments-day-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 8px;border-radius:999px;background:rgba(15,23,42,.08)}.appointments-events-list{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.appointments-event-card-compact summary{list-style:none}.appointments-event-card-compact summary::-webkit-details-marker{display:none}.appointments-event-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;cursor:pointer}.appointments-event-summary-text{margin-top:4px;color:#475569;font-size:14px}.appointments-event-details{margin-top:12px}@media (max-width:1180px){.appointments-bottom-grid{grid-template-columns:1fr}}.panel-slug-qr-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);grid-gap:16px;gap:16px;align-items:start}.panel-qr-card{display:grid;justify-items:center;grid-gap:12px;gap:12px;padding:16px;border:1px solid #e5e7eb;border-radius:18px;background:#f8fafc}.panel-company-qr{width:180px;height:215px;object-fit:contain;border:1px solid #dbe3ee;border-radius:14px;background:#fff;padding:8px}.panel-qr-download{width:100%;text-align:center;text-decoration:none}.form-help{margin:6px 0 0;color:#64748b;font-size:13px;line-height:1.45;overflow-wrap:anywhere}@media (max-width:760px){.panel-slug-qr-grid{grid-template-columns:1fr}}.panel-gallery-card{display:grid;grid-gap:14px;gap:14px;padding:16px;border:1px solid #e5e7eb;border-radius:18px;background:#f8fafc}.panel-gallery-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.panel-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:14px;gap:14px}.panel-gallery-item{display:grid;grid-gap:10px;gap:10px}.panel-gallery-thumb{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid #dbe3ee;border-radius:16px;background:#fff}.upload-button.is-disabled{opacity:.55;cursor:not-allowed}.company-carousel-wrap{display:grid;grid-gap:14px;gap:14px}.company-carousel{position:relative;display:flex;align-items:center;justify-content:center;min-height:260px;height:clamp(280px,62vw,620px);overflow:hidden;border-radius:22px;border:1px solid #dbe3ee;background:radial-gradient(circle at center,hsla(0,0%,100%,.1),transparent 42%),linear-gradient(135deg,#0f172a,#1e293b)}.company-carousel-image{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}.company-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:999px;background:rgba(15,23,42,.78);color:#fff;font-size:34px;line-height:1;cursor:pointer;box-shadow:0 12px 28px rgba(15,23,42,.28)}.company-carousel-arrow:hover{background:rgba(15,23,42,.92)}.company-carousel-arrow-left{left:16px}.company-carousel-arrow-right{right:16px}.company-carousel-counter{text-align:center;font-size:.92rem;color:#64748b}.company-carousel-thumbs{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 8px;scrollbar-width:thin}.company-carousel-thumb-button{flex:0 0 auto;width:86px;height:64px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:14px;background:#e5e7eb;cursor:pointer}.company-carousel-thumb-button.is-active{border-color:#2563eb}.company-carousel-thumb-image{width:100%;height:100%;object-fit:cover;object-position:center}@media (max-width:760px){.company-carousel{height:clamp(260px,92vw,520px);border-radius:18px}.company-carousel-arrow{width:38px;height:38px;font-size:28px}.company-carousel-arrow-left{left:10px}.company-carousel-arrow-right{right:10px}.company-carousel-thumb-button{width:72px;height:54px}}