/* Agéndalo · interfaz profesional v0.3, sin librerías externas */
:root{--pro-blue:#275ae5;--pro-navy:#172342;--pro-ink:#253451;--pro-muted:#74839a;--pro-line:#e5eaf3;--pro-bg:#f6f8fc;--pro-elev:0 12px 38px rgba(32,49,93,.065)}
html{scroll-behavior:smooth}
body{background:var(--pro-bg);font-size:14px}
.topbar{background:rgba(255,255,255,.98);border-bottom:1px solid var(--pro-line);height:70px;padding:0 clamp(16px,3vw,48px)}
.brandmark{background:#275ae5;box-shadow:none}
.adminlayout{grid-template-columns:258px minmax(0,1fr);min-height:calc(100vh - 130px)}
.sidebar{padding:26px 13px 40px;border-right:1px solid var(--pro-line)}
.sidehead{font-weight:750;letter-spacing:.16em;color:#94a0b4}
.sideitem{border-radius:10px;min-height:46px;font-weight:560}
.sideitem.on{background:#edf2ff;color:#2452cb;box-shadow:none}
.adminmain{width:100%;max-width:1430px;padding:32px clamp(19px,3.5vw,56px) 76px}
.pagetitle h1{font-size:clamp(27px,3vw,38px);letter-spacing:-.045em}
.pagetitle p{font-size:14px;color:var(--pro-muted)}
.statgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
.stat{background:#fff;border-radius:17px;box-shadow:var(--pro-elev);min-width:0;min-height:146px}
.stat::before{height:0!important}
.stat strong{font-size:34px;font-weight:800}
.stat a{overflow-wrap:anywhere}
.eventgrid{grid-template-columns:repeat(auto-fill,minmax(265px,1fr))}
.eventcard{min-height:254px;display:flex;flex-direction:column}
.eventcard .eventdetails{margin-top:auto}
.eventactions{display:flex;flex-wrap:wrap;gap:6px 12px}
.eventactions a,.eventactions button{padding:6px 7px!important}
.settingscard{box-shadow:var(--pro-elev);max-width:1080px}
.btn.primary{background:var(--pro-blue)}
.btn.primary:hover{background:#1d4bbf}
.pro-analytics-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}
.pro-analytics-stats .stat{min-height:118px;padding:23px}
.pro-chart{background:#fff;border:1px solid var(--pro-line);border-radius:16px;padding:22px;box-shadow:var(--pro-elev);max-width:1080px}
.pro-bar-row{display:grid;grid-template-columns:88px minmax(0,1fr) 28px;align-items:center;gap:18px;padding:8px 0}
.pro-bar-row>span{color:var(--pro-muted);font-size:13px}
.pro-bar-row>div{height:14px;border-radius:6px;background:#edf2f9;overflow:hidden}
.pro-bar-row>div>i{display:block;background:linear-gradient(90deg,#275ae5,#82a5fa);height:100%;border-radius:6px}
.pro-bar-row strong{text-align:right;color:var(--pro-navy)}
.pro-question-row{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(145px,.8fr) minmax(180px,1fr) auto;align-items:start;gap:14px;border:1px solid #e6ebf4;border-radius:13px;padding:16px;margin:11px 0;background:#fbfcff}
.pro-question-row label{font-size:12px;font-weight:700;color:var(--pro-ink)}
.pro-question-row .checkline{min-width:105px;padding-top:17px}
.pro-event-hours{padding:20px;border:1px solid var(--pro-line);border-radius:14px;margin-top:18px;background:#f9fbfe}
.pro-event-hours[hidden]{display:none!important}
.pro-event-hours .scheduleline{flex-wrap:wrap}
.pro-event-hours .scheduleinputs{flex-wrap:wrap}
.profile-banner{--public-accent:#275ae5;background:linear-gradient(135deg,#fff,#f6f9ff);border:1px solid #e6ebf5;border-radius:22px;box-shadow:var(--pro-elev)}
.profile-banner .avatar{background:var(--public-accent);border-radius:50%;width:82px;height:82px;display:grid;place-items:center;overflow:hidden;font-size:31px;color:white}
.profile-banner .avatar img{width:100%;height:100%;object-fit:cover;display:block}
.profile-banner .pro-headline{font-weight:750;color:var(--pro-navy);font-size:15px}
.profile-banner .pro-public-link{display:inline-block;font-weight:750;color:var(--public-accent);margin-top:10px}
.publicevent{border-radius:14px;box-shadow:0 7px 20px rgba(26,43,89,.045)}
.publicevent:hover{border-color:#bbc8e5;transform:translateY(-1px)}
.bookingpanel{border-radius:18px;box-shadow:var(--pro-elev)}
.bookingpanel .hostinfo{background:#fff}
.bookingpanel .pickarea{background:#fff}
.slot{border-radius:8px}
#booking-form:where(:not([hidden])){animation:pro-rise .2s ease-out}
@keyframes pro-rise{from{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1060px){.pro-question-row{grid-template-columns:repeat(2,minmax(0,1fr))}.pro-analytics-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.adminlayout{grid-template-columns:minmax(0,1fr)}.sidebar{position:relative;padding:10px 12px;display:flex;flex-wrap:nowrap;overflow:auto;white-space:nowrap;gap:5px;border-right:0;border-bottom:1px solid var(--pro-line)}.sidehead{display:none}.sideitem{margin:0;padding:8px 12px;flex:none;min-height:40px}.adminmain{padding:23px 15px 60px}.statgrid{grid-template-columns:1fr}.stat{min-height:112px}.eventgrid{grid-template-columns:1fr}.pro-question-row{grid-template-columns:1fr}.topbar{padding:0 14px}.topbar nav{gap:2px}.topbar nav a{padding:6px 7px;font-size:11px}}
@media(max-width:460px){.pro-analytics-stats{grid-template-columns:1fr 1fr;gap:9px}.pro-analytics-stats .stat{padding:12px;min-height:92px}.pro-analytics-stats .stat strong{font-size:27px}.pro-bar-row{grid-template-columns:65px 1fr 23px;gap:8px}.profile-banner{border-radius:14px}.settingscard{padding:17px}.topbar .brand{font-size:18px}}

.pro-details{margin:20px 0;border:1px solid #e3eaf5;border-radius:13px;background:#fcfdff;padding:2px 17px 14px}
.pro-details summary{padding:15px 0;cursor:pointer;font-weight:760;color:#304564}
.pro-details[open] summary{margin-bottom:14px;border-bottom:1px solid #e7ebf4}
/* Agéndalo 0.3.1: marca global y marcas independientes por profesional */
.platform-logo{max-width:230px;max-height:64px;width:auto;height:auto;display:block;object-fit:contain}
.logo-preview{display:flex;align-items:center;justify-content:center;background:#f8faff;border:1px dashed #ccd5e5;border-radius:15px;margin:12px 0 18px;min-height:98px;padding:16px;max-width:460px}
.logo-preview img{max-width:100%;max-height:104px;width:auto;object-fit:contain}
.brand-placeholder{border:1px dashed #ccd5e5;border-radius:12px;padding:16px;color:#61708a;background:#f8faff;margin:14px 0}
.logo-user-config{border-top:1px solid #e8edf6;margin-top:14px;padding-top:20px}
.logo-user-config h2{margin:0 0 8px}
.booking-owner-logo{display:block;max-width:min(300px,85%);max-height:98px;object-fit:contain;margin:0 auto 22px}
.booking-owner-logo-small{display:block;max-width:210px;max-height:76px;object-fit:contain;margin:0 0 20px}
.logo-profile-preview{object-fit:contain;max-height:92px;max-width:100%}
.hostinfo .avatar.small img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
@media(max-width:600px){.platform-logo{max-width:150px;max-height:44px}.booking-owner-logo{max-width:80%;max-height:78px}.booking-owner-logo-small{max-width:160px;max-height:54px}}
.meet-waiting{display:block;border-radius:10px;background:#edf4ff;color:#17469e;font-size:13px;line-height:1.55;padding:11px 13px;margin:12px 0}

/* Agéndalo v0.3.2 — Google Meet es una modalidad visible, no un desplegable escondido */
.meet-picker{margin:0 0 28px;padding:23px;border:1px solid #dce6f9;border-radius:17px;background:linear-gradient(145deg,#f6f9ff,#fff)}
.meet-heading{display:flex;gap:14px;align-items:center;margin-bottom:18px}
.meet-heading-icon{display:grid;place-items:center;font-size:25px;width:45px;height:45px;flex:none;border-radius:12px;background:#e5edff;color:#2055ce}
.meet-heading h2{margin:0 0 5px!important;font-size:19px!important;line-height:1.3}
.meet-heading p{margin:0;color:#62728c;font-size:13px;line-height:1.5}
.meet-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.meet-option{display:flex!important;align-items:flex-start;gap:13px;margin:0!important;background:#fff;border:2px solid #dee5f1;border-radius:13px;padding:16px 14px;cursor:pointer;font-weight:400!important;min-height:116px;transition:background .15s,border-color .15s,box-shadow .15s}
.meet-option:hover{border-color:#96b4ff}
.meet-option:has(input:checked){border-color:#285fe0;background:#f1f6ff;box-shadow:0 0 0 2px rgba(52,101,236,.09)}
.meet-option input[type=radio]{accent-color:#265ce1;margin:5px 0 0;width:18px;height:18px;flex:none}
.meet-symbol{background:#eaf1ff;color:#285bdd;display:grid;place-items:center;border-radius:10px;font-size:22px;flex:none;width:35px;height:35px}
.meet-option strong,.meet-option small{display:block}
.meet-option strong{color:#18335d;font-size:14px;line-height:1.4}
.meet-option small{color:#60718e;font-size:12px;line-height:1.5;margin-top:5px}
.meet-connect{display:none;margin:15px 0 0;padding:15px 17px;border:1px solid #f0d9aa;background:#fff8e9;border-radius:10px;color:#744c0f;font-size:13px;line-height:1.5}
.meet-connect.connected{border-color:#c7e6d7;background:#edfbf4;color:#116445}
.meet-connect strong{display:block;font-size:14px}
.meet-connect p{margin:6px 0 0}
.meet-connect a{font-weight:800;color:#1f55ca;text-decoration:underline}
.meet-other-settings{margin-top:18px}
.meet-other-settings .formgrid label{margin:0!important}
.meet-other-settings .formgrid{row-gap:13px}
.meet-other-settings .hint{margin:12px 0 0!important}
.meet-picker:has(input[value=google_meet]:checked) .meet-connect{display:block}
.meet-picker:has(input[value=google_meet]:checked) .meet-other-settings{display:none}
@media(max-width:700px){.meet-cards{grid-template-columns:1fr}.meet-option{min-height:auto}.meet-picker{padding:18px}}
