@charset "UTF-8";:root{--paper: #f7f2ea;--paper-2: #efe7da;--card: #fffdf9;--ink: #1f1a16;--ink-2: #3b332c;--muted: #776d62;--line: #e4dacb;--line-2: #d6c9b6;--accent: #b4532a;--accent-ink: #fff;--accent-soft: color-mix(in srgb, var(--accent) 12%, transparent);--sage: #4f7a5a;--sage-soft: #e3ece2;--amber: #b7791f;--amber-soft: #f6ead3;--danger: #b3402f;--danger-soft: #f6e0db;--radius: 16px;--radius-sm: 10px;--shadow: 0 1px 2px rgba(60, 40, 20, .05), 0 8px 24px -12px rgba(60, 40, 20, .18);--shadow-lg: 0 24px 60px -24px rgba(50, 30, 10, .35);--serif: "Fraunces", Georgia, serif;--sans: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,.serif{font-family:var(--serif);font-weight:600;letter-spacing:-.015em;line-height:1.12;margin:0;font-variation-settings:"opsz" 96}p{margin:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%}input[type=checkbox],input[type=radio]{width:18px;height:18px;margin:0;accent-color:var(--accent);flex:none}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;border:1px solid transparent;background:var(--ink);color:var(--paper);font-weight:700;font-size:14px;text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform .12s ease,background .15s ease,box-shadow .15s ease,opacity .15s}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btn.accent{background:var(--accent);color:var(--accent-ink)}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}.btn.ghost:hover{background:var(--card)}.btn.soft{background:var(--paper-2);color:var(--ink)}.btn.danger{background:var(--danger-soft);color:var(--danger)}.btn.sm{height:34px;padding:0 14px;font-size:13px}.btn.lg{height:52px;padding:0 26px;font-size:15px}.btn.icon{width:38px;padding:0}.btn.block{width:100%}.link{background:none;border:0;padding:0;color:var(--accent);font-weight:700;cursor:pointer;text-decoration:none}.link:hover{text-decoration:underline}.field{display:grid;gap:6px}.field>span{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.02em}.field small{color:var(--muted);font-size:12px}.input,.field input:not([type=checkbox]):not([type=radio]):not([type=color]),.field select,.field textarea{width:100%;min-height:44px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--line-2);background:var(--card);outline:none;transition:border-color .15s,box-shadow .15s}.input:focus,.field input:not([type=checkbox]):not([type=radio]):not([type=color]):focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.field textarea{min-height:90px;resize:vertical}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:560px){.grid-2{grid-template-columns:1fr}}.error{color:var(--danger);background:var(--danger-soft);padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--paper-2);color:var(--ink-2);white-space:nowrap}.chip.confirmada{background:var(--accent-soft);color:var(--accent)}.chip.atendida{background:var(--sage-soft);color:var(--sage)}.chip.no_asistio{background:var(--amber-soft);color:var(--amber)}.chip.cancelada{background:var(--danger-soft);color:var(--danger)}.dot{width:10px;height:10px;border-radius:50%;flex:none}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.muted{color:var(--muted)}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#fff;font-weight:800;font-size:13px;flex:none}.empty{padding:40px 20px;text-align:center;color:var(--muted)}.backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:#1f1a166b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade .15s ease}.dialog{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--card);border-radius:22px;box-shadow:var(--shadow-lg);padding:26px;animation:rise .2s ease}.dialog header{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:18px}.toast{position:fixed;left:50%;bottom:24px;z-index:60;transform:translate(-50%);padding:12px 18px;border-radius:999px;background:var(--ink);color:var(--paper);font-weight:700;font-size:14px;box-shadow:var(--shadow-lg);animation:rise .2s ease;max-width:calc(100vw - 32px)}.spinner{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.loading{display:grid;place-items:center;gap:12px;padding:60px 20px;color:var(--muted);font-size:14px;text-align:center}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
