.ceg-app{--berry:#BD146A;--ink:#40343B;--muted:#74646d;--bg:#F7F3F0;color:var(--ink);background:var(--bg);padding:26px;max-width:1240px;margin:20px auto;border-radius:20px;font-family:Inter,'Segoe UI',Arial,sans-serif;box-sizing:border-box;line-height:1.5}.ceg-app *{box-sizing:border-box}.ceg-app button,.ceg-app input,.ceg-app select,.ceg-app textarea{font:inherit}.ceg-app button{cursor:pointer}.ceg-app button:focus-visible,.ceg-app a:focus-visible,.ceg-app input:focus-visible,.ceg-app select:focus-visible{outline:3px solid #4979AD;outline-offset:2px}.ceg-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:22px}.ceg-eyebrow{font-size:11px;color:var(--berry);letter-spacing:1.6px;font-weight:700}.ceg-head h1{font-size:30px;color:var(--berry);margin:3px 0}.ceg-head p,.ceg-section-top p{margin:0;color:var(--muted);font-size:14px}.ceg-head-right{display:flex;gap:15px;align-items:center}.ceg-exit{font-weight:700;color:var(--berry)}.ceg-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:24px}.ceg-tile{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:112px;background:var(--tile)!important;color:#fff!important;border:0!important;border-radius:13px!important;gap:10px;font-weight:700;box-shadow:0 3px 10px #53364a15;transition:transform .12s,box-shadow .12s}.ceg-tile:hover,.ceg-tile.active{transform:translateY(-2px);box-shadow:0 6px 18px #53364a38}.ceg-icon svg{height:33px;width:33px}.ceg-app main>section{background:#fff;border-radius:16px;padding:22px;box-shadow:0 2px 12px #3f23370c}.ceg-app [hidden]{display:none!important}.ceg-section-top{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:19px}.ceg-section-top h2{margin:0;font-size:23px}.ceg-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.ceg-controls>button:not(.ceg-primary){background:#fff6f7;border:1px solid #ead9e0;border-radius:8px;padding:6px 13px;color:var(--berry);font-size:22px}.ceg-primary{background:var(--berry)!important;color:#fff!important;border:0!important;border-radius:9px!important;padding:11px 16px!important;font-weight:700!important;box-shadow:none!important}.ceg-primary:hover{background:#961052!important}.ceg-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.ceg-week{text-align:center;color:var(--muted);font-weight:700;padding:6px}.ceg-day,.ceg-empty{border:1px solid #f0e7e8!important;min-height:82px;padding:8px;background:#fcfaf9!important;border-radius:8px!important;text-align:left;color:var(--ink)!important;display:flex;flex-direction:column;gap:4px}.ceg-day:hover{border-color:#bd146a!important}.ceg-day.chosen{background:#ffe3eb!important;border:2px solid #bd146a!important}.ceg-day.today b{color:var(--berry)}.ceg-day small{color:var(--muted);font-size:11px}.ceg-dots{display:flex;gap:4px}.ceg-dot{display:block;width:8px;height:8px;border-radius:50%;background:#e3a33c}.ceg-dot.confirmed{background:#248F83}.ceg-dot.attended{background:#4979AD}.ceg-dot.cancelled{background:#E94351}.ceg-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:16px 0}.ceg-app h3{font-size:18px}.ceg-agenda-item{display:flex;gap:15px;align-items:center;padding:12px;border-bottom:1px solid #f1e8e9}.ceg-agenda-item>div{flex:1}.ceg-agenda-item p{margin:2px 0;color:var(--muted);font-size:13px}.ceg-hour{font-weight:700;color:var(--berry)}.ceg-status{border-radius:14px;padding:4px 10px;background:#faeacb;color:#795113;font-size:12px;font-weight:700;white-space:nowrap}.ceg-status.confirmed{background:#d9f2e8;color:#12664d}.ceg-status.attended{background:#e1ebfa;color:#2f5687}.ceg-status.cancelled{background:#ffe5e5;color:#a52d38}.ceg-agenda-item button,.ceg-table-wrap button,.ceg-link{border:1px solid #e9d6e0;background:#fff;color:var(--berry);padding:6px 11px;border-radius:8px}.ceg-empty-state{padding:25px 10px;text-align:center;color:var(--muted)}.ceg-table-wrap{width:100%;overflow-x:auto}.ceg-table-wrap table{width:100%;border-collapse:collapse;font-size:14px}.ceg-table-wrap th{text-align:left;background:#fff1f5;color:#6b284d}.ceg-table-wrap td,.ceg-table-wrap th{padding:12px;border-bottom:1px solid #f0e8eb}.ceg-table-wrap td{color:var(--ink)}.ceg-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.ceg-stats article{background:#faf1f4;border-radius:12px;padding:16px}.ceg-stats span{display:block;font-size:13px;color:var(--muted)}.ceg-stats strong{display:block;font-size:23px;color:var(--berry);margin-top:6px}.ceg-hint{color:var(--muted);font-size:13px;margin-top:18px}.ceg-modal{position:fixed;z-index:999999;inset:0;background:#20141b99;display:flex;align-items:center;justify-content:center;padding:18px}.ceg-modal-box{background:#fff;color:var(--ink);border-radius:18px;padding:22px;width:min(520px,100%);max-height:90vh;overflow-y:auto}.ceg-modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.ceg-modal-head h2{margin:0;color:var(--berry)}#ceg-close{border:0;background:transparent;font-size:27px;color:var(--ink)}#ceg-fields{display:grid;gap:12px}#ceg-fields label{display:grid;gap:5px;font-size:13px;font-weight:700}#ceg-fields input,#ceg-fields select,#ceg-fields textarea{border:1px solid #d9cbd1;border-radius:8px;min-height:42px;padding:9px;color:#39242d;background:white;max-width:100%;width:100%}#ceg-fields textarea{min-height:75px}.ceg-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.ceg-form-actions>button:first-child{border:1px solid #d8d0d4;border-radius:8px;background:#fff;padding:8px 16px;color:var(--ink)}#ceg-toast{position:fixed;right:20px;bottom:20px;z-index:1000000;background:#40343B;color:white;padding:13px 19px;border-radius:10px;opacity:0;pointer-events:none;transition:opacity .15s}#ceg-toast.show{opacity:1}.ceg-login{margin:30px auto;max-width:450px;padding:30px;background:#fff1f5;border-radius:14px}
@media(max-width:760px){.ceg-app{margin:0;padding:12px;border-radius:0}.ceg-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ceg-tile{min-height:95px}.ceg-app main>section{padding:12px}.ceg-section-top h2{font-size:20px}.ceg-head h1{font-size:24px}.ceg-head-right{font-size:12px}.ceg-day,.ceg-empty{min-height:57px;padding:4px}.ceg-day small{display:none}.ceg-agenda-item{gap:7px;flex-wrap:wrap}.ceg-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ceg-stats strong{font-size:19px}.ceg-controls{width:100%;justify-content:space-between}}

/* Paleta de marca: crema, rosa, taupe y marrón. */
@font-face{font-family:Manrope;src:url(fonts/manrope.ttf) format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:Sora;src:url(fonts/sora.ttf) format('truetype');font-weight:100 800;font-display:swap}
.ceg-app{--berry:#A83D78;--ink:#352C2A;--muted:#6B5950;--bg:#F7F2ED;font-family:Manrope,Arial,sans-serif;box-shadow:0 12px 48px #352c2a0b}
.ceg-app h1,.ceg-app h2,.ceg-app h3,.ceg-stats strong{font-family:Sora,Arial,sans-serif;font-weight:600;letter-spacing:-.03em}
.ceg-head h1{color:var(--ink)}.ceg-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.ceg-tile{background:#fff!important;color:#6b5950!important;border:1px solid #E5D8CE!important;min-height:88px;font-size:13px}.ceg-tile.active{background:#A83D78!important;color:white!important;border-color:#A83D78!important}.ceg-tile:hover{background:#F7E5EF!important;color:#352c2a!important}.ceg-icon svg{height:25px;width:25px}.ceg-app .ceg-primary:hover{background:#872b60!important}.ceg-day.chosen{border-color:#A83D78!important;background:#F7E5EF!important}.ceg-pagination,#ceg-search{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.ceg-pagination button,#ceg-search button[data-export]{border:1px solid #B6A294;border-radius:8px;background:#fff;padding:8px 12px;color:#352c2a}.ceg-app button:disabled{opacity:.45;cursor:default}#ceg-search label{display:flex;align-items:center;gap:8px;flex:1}#ceg-search input{border:1px solid #B6A294;border-radius:8px;padding:10px;width:100%;min-width:120px}.ceg-app[aria-busy=true] main{opacity:.6}.ceg-modal-box{box-shadow:0 24px 80px #352c2a30}.ceg-table-wrap td button{margin:3px}.ceg-app textarea:focus-visible{outline:3px solid #A83D78;outline-offset:2px}@media(max-width:760px){.ceg-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.ceg-tile{min-height:75px}.ceg-pagination{font-size:12px}#ceg-search label{flex-basis:100%}.ceg-head{align-items:flex-start}.ceg-head-right{flex-direction:column;gap:4px}.ceg-app main{overflow:hidden}}

.ceg-app{font-size:14px}.ceg-app .ceg-tile{font-size:13px;font-weight:600}.ceg-app .ceg-day{font-size:14px}.ceg-app .ceg-controls>button:not(.ceg-primary){font-size:18px}
/* 1.1: workspace inspired by the reception dashboard. */
.ceg-app{max-width:none;min-height:100vh;min-height:100dvh;margin:0;padding:0;border-radius:0;background:#FCF8F3;box-shadow:none}
.ceg-sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:#F6EDE1;border-right:1px solid #E8DBCF;padding:28px 18px;display:flex;flex-direction:column;overflow:auto;z-index:80}
.ceg-brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:#352C2A;font-family:Sora,Arial,sans-serif;font-size:17px;font-weight:500;line-height:1.4}.ceg-brand img{border-radius:14px;flex-shrink:0}.ceg-brand small{display:block;font:9px Manrope,Arial,sans-serif;letter-spacing:1.5px;color:#80685B;margin-top:5px}
.ceg-nav-label{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#80685B;margin:35px 12px 10px}.ceg-app .ceg-nav{display:flex;flex-direction:column;gap:5px;margin:0}.ceg-app .ceg-tile{display:flex;flex-direction:row;justify-content:flex-start;min-height:48px;gap:14px;padding:12px 14px;background:transparent!important;border:0!important;border-radius:12px!important;box-shadow:none;transform:none;color:#463630!important;text-align:left;font-size:13px;font-weight:600}.ceg-app .ceg-tile.active{background:#A83D78!important;color:#fff!important;box-shadow:none}.ceg-app .ceg-tile:hover{background:#ECD9E2!important;color:#352C2A!important}.ceg-app .ceg-tile.active:hover{background:#8C2E62!important;color:white!important}.ceg-app .ceg-icon{display:flex}.ceg-app .ceg-icon svg{width:20px;height:20px}
.ceg-sidebar-foot{display:grid;gap:12px;margin-top:auto;padding:28px 12px 0;color:#80685B;font-size:11px}.ceg-sidebar-foot button{background:#fffaf5;color:#83315E;border:1px solid #D8B6C8;border-radius:10px;padding:10px;font-size:12px}.ceg-sidebar-foot small{font-size:10px}
.ceg-workspace{margin-left:238px;min-width:0}.ceg-app .ceg-head{padding:20px 36px;border-bottom:1px solid #E8DBCF;background:#FFFCF8;margin:0;min-height:82px}.ceg-top-left{display:flex;gap:14px;align-items:center}.ceg-head strong{font-size:13px;font-weight:600}.ceg-head p{font-size:11px;margin-top:3px}.ceg-app .ceg-head-right{font-size:12px;flex-direction:row;gap:12px}.ceg-avatar{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;background:#EBC5DA;border-radius:50%;font-weight:600}.ceg-exit{font-size:12px}.ceg-app main{padding:32px 36px;max-width:1500px;margin:0 auto}.ceg-app main>section.ceg-home{padding:0;background:none;box-shadow:none;border-radius:0}.ceg-welcome{padding:34px 32px;background:linear-gradient(110deg,#EDD1D9,#F6E9CE);border:1px solid #E7C7CF;border-radius:24px;margin-bottom:26px}.ceg-welcome h1{font-size:clamp(24px,2.4vw,32px);line-height:1.3;margin:14px 0;color:#352C2A}.ceg-welcome p{font-size:14px;margin:0;color:#6B5950}.ceg-home>h2{font-size:20px;margin:0 0 18px}.ceg-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ceg-action-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-height:174px;padding:22px;text-align:left;background:#FFFCF8;border:1px solid #E8D4C9;border-radius:20px;color:#352C2A;transition:background .15s,transform .15s}.ceg-action-card:hover{background:#FFF3F7;transform:translateY(-2px)}.ceg-action-card strong{font-size:16px;font-weight:700}.ceg-action-card>span:last-child{font-size:12px;color:#6B5950;line-height:1.6}.ceg-action-icon{background:#A83D78;border-radius:16px;padding:12px;color:white;display:flex}.ceg-action-icon svg{width:30px;height:30px}.ceg-home-note{margin-top:24px;color:#80685B;font-size:12px}.ceg-app #ceg-menu-toggle{display:none}#ceg-connectivity{margin:16px 36px 0;padding:12px 18px;border-radius:12px;background:#FFF0CB;border:1px solid #E6CC86;color:#604815;font-size:13px}.ceg-install-dialog{border:1px solid #E5D8CE;border-radius:24px;padding:30px;max-width:440px;width:calc(100% - 40px);box-sizing:border-box;color:#352C2A;background:#FFFCF8;font:14px Manrope,Arial,sans-serif;line-height:1.7}.ceg-install-dialog::backdrop{background:#352C2A77}.ceg-install-dialog h2{font:600 23px Sora,Arial,sans-serif}.ceg-install-detail{color:#6B5950;font-size:12px}.ceg-install-dialog button{background:#A83D78;color:white;border:0;border-radius:10px;padding:12px 20px;font:inherit;cursor:pointer}.ceg-install-dialog button:focus-visible{outline:3px solid #352C2A;outline-offset:3px}
@media(max-width:1100px){.ceg-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.ceg-app main{padding:24px}.ceg-app .ceg-head{padding:18px 24px}}
@media(max-width:900px){.ceg-workspace{margin-left:0}.ceg-sidebar{top:76px;bottom:0;transform:translateX(-100%);transition:transform .2s;width:250px;box-shadow:10px 0 30px #352c2a18}.ceg-menu-open .ceg-sidebar{transform:translateX(0)}.ceg-app #ceg-menu-toggle{display:grid;place-items:center;border:1px solid #D9C5B7;background:#fffaf5;border-radius:10px;width:38px;height:38px;color:#83315E;font-size:20px;flex-shrink:0}.ceg-app .ceg-head{position:sticky;top:0;z-index:90;min-height:76px;padding:12px 18px}.ceg-head-right>span:not(.ceg-avatar){max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ceg-head p{font-size:10px}.ceg-app main{padding:22px 18px}.ceg-app main>section{padding:18px}.ceg-welcome{padding:28px 24px}.ceg-app .ceg-head-right{gap:8px}#ceg-connectivity{margin:12px 18px 0}}
@media(max-width:480px){.ceg-shortcuts{grid-template-columns:1fr;gap:12px}.ceg-action-card{min-height:146px;padding:20px}.ceg-welcome{padding:24px 20px;border-radius:20px}.ceg-welcome h1{font-size:25px}.ceg-app main{padding:20px 14px}.ceg-app .ceg-head{padding:12px}.ceg-head-right>span:not(.ceg-avatar){display:none}.ceg-avatar{width:30px;height:30px}.ceg-app .ceg-controls{justify-content:flex-start}.ceg-app .ceg-stats{grid-template-columns:1fr 1fr}.ceg-install-dialog{padding:24px}}
@media(prefers-reduced-motion:reduce){.ceg-sidebar,.ceg-action-card{transition:none}.ceg-action-card:hover{transform:none}}
@media(max-width:900px){.ceg-sidebar{visibility:hidden}.ceg-menu-open .ceg-sidebar{visibility:visible}}
