:root{--bg-primary:#fff;--bg-secondary:#f8fafb;--bg-surface:#fff;--bg-elevated:#f1f5f8;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-label:#64748b;--border-light:#e8ecf1;--border-medium:#d1d8e0;--border-strong:#b0bac5;--accent-cristina:#0d9488;--accent-cristina-bg:rgba(13,148,136,.06);--accent-cristina-border:rgba(13,148,136,.25);--accent-david:#6366f1;--accent-david-bg:rgba(99,102,241,.06);--accent-david-border:rgba(99,102,241,.25);--accent-meeting:#059669;--accent-meeting-bg:rgba(5,150,105,.08);--accent-danger:#dc2626;--accent-danger-bg:rgba(220,38,38,.06);--accent-info:#2563eb;--accent-info-bg:rgba(37,99,235,.06);--accent-purple:#7c3aed;--accent-purple-bg:rgba(124,58,237,.06);--font-body:"Sora",sans-serif;--font-mono:"IBM Plex Mono",monospace;--grid-color:rgba(15,23,42,.04);--grid-size:24px}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);background:var(--bg-primary)}body{min-height:100vh}.lab-grid-bg{position:fixed;inset:0;z-index:-1;background-color:var(--bg-primary);background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:var(--grid-size) var(--grid-size)}.lab-grid-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 50%,rgba(241,245,248,.7) 100%);pointer-events:none}.main-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.content-wrapper{text-align:center;background:var(--bg-surface);padding:2.5rem 2rem;border-radius:2px;border:1px solid var(--border-light);box-shadow:0 1px 3px rgba(15,23,42,.04),0 4px 16px rgba(15,23,42,.03);max-width:800px;width:100%;position:relative}.content-wrapper:after,.content-wrapper:before{content:"";position:absolute;width:12px;height:12px;border-color:var(--border-medium);border-style:solid;pointer-events:none}.content-wrapper:before{top:8px;left:8px;border-width:1px 0 0 1px}.content-wrapper:after{bottom:8px;right:8px;border-width:0 1px 1px 0}.main-heading{font-family:var(--font-mono);font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem;letter-spacing:-.02em;line-height:1.2}.content-wrapper>h1.main-heading:after{content:"REGISTRO EN CURSO";display:block;font-family:var(--font-mono);font-size:.625rem;font-weight:500;color:var(--text-muted);letter-spacing:.2em;text-transform:uppercase;margin-top:.5rem;margin-bottom:2rem}.counter-display{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;align-items:stretch;padding:1.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:2px;position:relative}.counter-display:before{content:"T+";position:absolute;top:.5rem;left:.75rem;font-family:var(--font-mono);font-size:.625rem;font-weight:600;color:var(--accent-meeting);letter-spacing:.1em}.time-unit{display:flex;flex-direction:column;align-items:center;min-width:72px;padding:.625rem .5rem;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:2px}.time-value{font-family:var(--font-mono);font-size:2.25rem;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:.375rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.time-label{font-family:var(--font-mono);font-size:.5625rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.15em}.webhook-buttons-container{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.625rem;background:var(--bg-surface);padding:.875rem 1.25rem;border:1px solid var(--border-light);border-radius:2px;box-shadow:0 2px 8px rgba(15,23,42,.06);z-index:100}.webhook-title{font-family:var(--font-mono);font-size:.625rem;font-weight:500;color:var(--text-muted);margin:0;text-align:center;text-transform:uppercase;letter-spacing:.08em}.webhook-buttons-row{display:flex;gap:.625rem;justify-content:center}.webhook-button{padding:.5rem 1.25rem;font-size:1.375rem;font-weight:700;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:2px;cursor:pointer;transition:all .15s ease;font-family:inherit;min-width:54px;line-height:1}.webhook-button:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--border-medium)}.webhook-button:active:not(:disabled){background:var(--border-light)}.webhook-button:disabled{opacity:.4;cursor:not-allowed}.webhook-feedback{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;padding:.25rem .625rem;border-radius:2px;letter-spacing:.05em}.webhook-feedback-success{color:var(--accent-meeting);background:var(--accent-meeting-bg)}.webhook-feedback-error{color:var(--accent-danger);background:var(--accent-danger-bg)}.milestones-container{margin-top:2.5rem;width:100%;border-top:1px solid var(--border-light);padding-top:2rem}.milestones-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;gap:1rem;flex-wrap:wrap}.milestones-heading{font-size:.8125rem;color:var(--text-secondary);margin:0;letter-spacing:.12em}.add-milestone-button,.milestones-heading{font-family:var(--font-mono);font-weight:600;text-transform:uppercase}.add-milestone-button{padding:.4375rem .875rem;font-size:.6875rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:2px;cursor:pointer;transition:all .15s ease;letter-spacing:.06em}.add-milestone-button:hover{background:var(--bg-secondary);border-color:var(--border-strong)}.add-milestone-button:active{background:var(--bg-elevated)}.milestones-list{display:flex;flex-direction:column;gap:.5rem}.milestone-item{padding:.875rem 1rem;background:var(--bg-surface);border:1px solid var(--border-light);border-left:3px solid var(--border-medium);border-radius:2px;text-align:left;transition:all .15s ease}.milestone-item:hover{border-left-color:var(--border-strong);background:var(--bg-secondary)}.milestone-item-cristina{border-left-color:var(--accent-cristina);background:var(--accent-cristina-bg)}.milestone-item-cristina:hover{background:rgba(13,148,136,.1)}.milestone-item-david{border-left-color:var(--accent-david);background:var(--accent-david-bg)}.milestone-item-david:hover{background:rgba(99,102,241,.1)}.milestone-date{font-family:var(--font-mono);font-size:.6875rem;font-weight:500;color:var(--text-muted);margin-bottom:.375rem;letter-spacing:.04em}.milestone-note{font-size:.875rem;font-weight:400;color:var(--text-primary);line-height:1.5}.milestones-empty{font-size:.75rem;padding:2rem 1rem;letter-spacing:.04em}.milestones-empty,.milestones-hint{text-align:center;font-family:var(--font-mono);color:var(--text-muted);text-transform:uppercase}.milestones-hint{font-size:.625rem;margin-top:1rem;letter-spacing:.06em}.milestone-item-active{position:relative;z-index:11;border-color:var(--border-medium)}.milestone-item-deleting{animation:milestoneSlideOut .3s ease forwards;pointer-events:none}@keyframes milestoneSlideOut{to{transform:translateX(110%);opacity:0}}.milestone-actions{display:flex;gap:.375rem;overflow:hidden;max-height:0;opacity:0;margin-top:0;transition:max-height .2s ease,opacity .15s ease,margin-top .2s ease}.milestone-actions-visible{max-height:44px;opacity:1;margin-top:.625rem}.milestone-action-button{flex:1 1;padding:.375rem .625rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;border:1px solid transparent;border-radius:2px;cursor:pointer;transition:all .12s ease;text-transform:uppercase;letter-spacing:.06em}.milestone-action-edit{color:var(--accent-info);background:var(--accent-info-bg);border-color:rgba(37,99,235,.15)}.milestone-action-edit:hover{background:rgba(37,99,235,.12)}.milestone-action-delete{color:var(--accent-danger);background:var(--accent-danger-bg);border-color:rgba(220,38,38,.15)}.milestone-action-delete:hover{background:rgba(220,38,38,.12)}.milestone-action-save{color:var(--bg-surface);background:var(--text-primary);border-color:var(--text-primary)}.milestone-action-save:hover:not(:disabled){background:var(--text-secondary)}.milestone-action-save:disabled{opacity:.4;cursor:not-allowed}.milestone-action-cancel{color:var(--text-secondary);background:var(--bg-elevated);border-color:var(--border-light)}.milestone-action-cancel:hover:not(:disabled){background:var(--border-light)}.milestone-edit-form{width:100%}.milestone-edit-fields{display:flex;flex-direction:column;gap:.375rem}.milestone-edit-input{font-size:.8125rem!important;padding:.375rem .5rem!important}.milestone-edit-actions{display:flex;gap:.375rem;margin-top:.5rem}.milestone-form{background:var(--bg-secondary);padding:1.25rem;border-radius:2px;margin-bottom:1.25rem;border:1px solid var(--border-light)}.form-group{margin-bottom:.75rem}.form-label{display:block;font-family:var(--font-mono);font-size:.625rem;font-weight:600;color:var(--text-label);margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.12em}.form-input{width:100%;padding:.5rem .75rem;font-size:.875rem;font-family:var(--font-body);border:1px solid var(--border-medium);border-radius:2px;outline:none;transition:border-color .15s ease;background:var(--bg-surface);color:var(--text-primary)}.form-input:focus{border-color:var(--text-primary);box-shadow:0 0 0 1px var(--text-primary)}.form-input:disabled{background-color:var(--bg-elevated);cursor:not-allowed;opacity:.5}.form-error{font-family:var(--font-mono);color:var(--accent-danger);font-size:.6875rem;margin:.375rem 0;font-weight:500;letter-spacing:.02em}.form-submit-button{width:100%;padding:.625rem .875rem;font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:var(--bg-surface);background:var(--text-primary);border:1px solid var(--text-primary);border-radius:2px;cursor:pointer;transition:all .15s ease;margin-top:.375rem;text-transform:uppercase;letter-spacing:.1em}.form-submit-button:hover:not(:disabled){background:var(--text-secondary);border-color:var(--text-secondary)}.form-submit-button:active:not(:disabled){background:#1e293b}.form-submit-button:disabled{opacity:.35;cursor:not-allowed}.user-selector{display:flex;flex-direction:column;align-items:center;padding:3rem 1rem;gap:2rem}.user-selector-heading{font-family:var(--font-mono);font-size:.875rem;font-weight:600;color:var(--text-secondary);margin:0;text-transform:uppercase;letter-spacing:.15em}.user-selector-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.user-selector-button{padding:1rem 2.5rem;font-family:var(--font-mono);font-size:.875rem;font-weight:600;color:var(--bg-surface);border:none;border-radius:2px;cursor:pointer;transition:all .15s ease;min-width:140px;text-transform:uppercase;letter-spacing:.1em;position:relative}.user-selector-button:before{content:"";position:absolute;top:.5rem;left:.5rem;width:6px;height:6px;border-radius:50%;background:hsla(0,0%,100%,.5)}.user-selector-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(15,23,42,.15)}.user-selector-button:active{transform:translateY(0)}.user-selector-cristina{background:var(--accent-cristina)}.user-selector-cristina:hover{background:#0f766e}.user-selector-david{background:var(--accent-david)}.user-selector-david:hover{background:#4f46e5}.current-user-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:2px;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--bg-surface);cursor:pointer;border:none;transition:all .15s ease;white-space:nowrap;flex-shrink:0;text-transform:uppercase;letter-spacing:.08em}.current-user-badge:hover{opacity:.85}.current-user-badge:active{opacity:.7}.current-user-badge-cristina{background:var(--accent-cristina)}.current-user-badge-david{background:var(--accent-david)}.tab-nav-row{display:flex;align-items:center;gap:.625rem;margin-bottom:1.5rem}.tab-nav{display:flex;gap:0;justify-content:center;flex:1 1;border:1px solid var(--border-light);border-radius:2px;overflow:hidden}.tab-button{flex:1 1;padding:.5rem 1.25rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;color:var(--text-muted);background:var(--bg-surface);border:none;border-right:1px solid var(--border-light);cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:.1em}.tab-button:last-child{border-right:none}.tab-button:hover{color:var(--text-secondary);background:var(--bg-secondary)}.tab-button-active{color:var(--bg-surface);background:var(--text-primary)}.tab-button-active:hover{color:var(--bg-surface);background:#1e293b}.calendar-container{margin-top:1rem;width:100%}.calendar-meeting-count{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem;padding:1.25rem;background:var(--accent-meeting-bg);border:1px solid rgba(5,150,105,.15);border-radius:2px}.calendar-meeting-count-number{font-family:var(--font-mono);font-size:3rem;font-weight:700;color:var(--accent-meeting);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.calendar-meeting-count-label{font-family:var(--font-mono);font-size:.625rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.15em;margin-top:.375rem}.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;padding:0}.calendar-nav-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-light);border-radius:2px;cursor:pointer;transition:all .12s ease;font-family:var(--font-mono);line-height:1}.calendar-nav-button:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--border-medium)}.calendar-nav-button:disabled{opacity:.25;cursor:not-allowed}.calendar-month-label{font-family:var(--font-mono);font-size:.8125rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.08em}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:2px;gap:2px;background:var(--border-light);border:1px solid var(--border-light);border-radius:2px}.calendar-weekday{text-align:center;font-family:var(--font-mono);font-size:.5625rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:.5rem 0;background:var(--bg-secondary)}.calendar-cell{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;font-family:var(--font-mono);background:var(--bg-surface)}.calendar-cell-empty{background:var(--bg-secondary)}.calendar-cell-day{font-size:.75rem;font-weight:500;color:var(--text-primary);border:none;cursor:pointer;transition:all .12s ease}.calendar-cell-day:hover:not(:disabled){background:var(--bg-elevated)}.calendar-cell-today{box-shadow:inset 0 0 0 1.5px var(--text-primary)}.calendar-cell-meeting{background:var(--accent-meeting)!important;color:#fff!important}.calendar-cell-meeting:hover:not(:disabled){background:#047857!important}.calendar-cell-disabled{opacity:.2;cursor:not-allowed}.calendar-day-number{line-height:1}.calendar-meeting-dot{width:3px;height:3px;border-radius:50%;background:hsla(0,0%,100%,.7);margin-top:2px}.calendar-hint{text-align:center;font-family:var(--font-mono);color:var(--text-muted);font-size:.5625rem;margin-top:.75rem;text-transform:uppercase;letter-spacing:.1em}.stats-container{margin-top:1rem;width:100%}.stats-empty{text-align:center;font-family:var(--font-mono);color:var(--text-muted);font-size:.75rem;padding:2rem 1rem;text-transform:uppercase;letter-spacing:.08em}.stats-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.5rem;gap:.5rem;margin-bottom:2rem}.stat-card{border-radius:2px;padding:1.25rem .75rem;display:flex;flex-direction:column;align-items:center;gap:.375rem;border:1px solid var(--border-light);position:relative}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px}.stat-card-green{background:var(--accent-meeting-bg)}.stat-card-green:before{background:var(--accent-meeting)}.stat-card-blue{background:var(--accent-info-bg)}.stat-card-blue:before{background:var(--accent-info)}.stat-card-purple{background:var(--accent-purple-bg)}.stat-card-purple:before{background:var(--accent-purple)}.stat-value{font-family:var(--font-mono);font-size:2.25rem;font-weight:700;color:var(--text-primary);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-label{font-family:var(--font-mono);font-size:.5rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;text-align:center;line-height:1.4}.stats-chart-block{margin-bottom:2rem;text-align:left;padding:1rem;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:2px}.stats-chart-title{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--text-secondary);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.1em}.stats-chart-subtitle{font-family:var(--font-mono);font-size:.5625rem;color:var(--text-muted);margin-bottom:.75rem;letter-spacing:.02em}.chart-scroll-wrapper{overflow-x:auto;padding-bottom:.5rem}.logout-button{position:fixed;top:1.25rem;right:1.25rem;padding:.4375rem .875rem;font-family:var(--font-mono);font-size:.625rem;font-weight:600;color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border-light);border-radius:2px;cursor:pointer;transition:all .15s ease;z-index:1000;text-transform:uppercase;letter-spacing:.1em;box-shadow:0 1px 4px rgba(15,23,42,.04)}.logout-button:hover{color:var(--text-secondary);border-color:var(--border-medium);background:var(--bg-secondary)}.logout-button:active{background:var(--bg-elevated)}@media (max-width:768px){.main-heading{font-size:1.25rem}.content-wrapper{padding:2rem 1.25rem}.counter-display{gap:.375rem;padding:1.25rem .75rem}.time-value{font-size:1.75rem}.time-unit{min-width:56px;padding:.5rem .375rem}.webhook-buttons-container{bottom:1rem;right:1rem;padding:.75rem 1rem}.milestones-container{margin-top:2rem;padding-top:1.5rem}.milestones-header{flex-direction:column;align-items:flex-start}.add-milestone-button{width:100%}.milestone-form{padding:1rem}.milestone-item{padding:.75rem .875rem}.logout-button{top:.75rem;right:.75rem;padding:.375rem .75rem;font-size:.5625rem}}@media (max-width:480px){.main-heading{font-size:1.125rem}.content-wrapper{padding:1.5rem .875rem}.content-wrapper:after,.content-wrapper:before{display:none}.time-value{font-size:1.5rem}.time-label{font-size:.5rem}.time-unit{min-width:48px;padding:.375rem .25rem}.webhook-buttons-container{bottom:.75rem;right:.75rem;padding:.625rem .875rem}.webhook-button{font-size:1.125rem;padding:.375rem .875rem;min-width:46px}.milestones-container{margin-top:1.5rem;padding-top:1.25rem}.milestone-form{padding:.875rem}.calendar-meeting-count-number{font-size:2.25rem}.stat-value{font-size:1.75rem}.stat-label{font-size:.4375rem}.stats-cards{gap:.375rem}.stat-card{padding:1rem .5rem}}@media (max-width:520px){.tab-button{padding:.5rem;font-size:.5625rem;letter-spacing:.06em}}@media (max-width:380px){.tab-button{padding:.4375rem .25rem;font-size:.5rem;letter-spacing:.04em}}