:root{color-scheme:dark;font-family:Inter,Segoe UI,sans-serif;background:radial-gradient(circle at top,rgba(88,101,242,.24),transparent 34%),linear-gradient(180deg,#1e1f22,#15171a);color:#f2f3f5}*{box-sizing:border-box}html,body,#root{min-height:100vh}body{margin:0;background:radial-gradient(circle at top,rgba(88,101,242,.22),transparent 34%),linear-gradient(180deg,#1e1f22,#15171a);color:#f2f3f5}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.calendar-app{height:100vh}.calendar-sidebar{background:#111214eb}.sidebar-brand h1,.calendar-header h2,.schedule-column h3,.event-card h3,.hero-card h3{margin:0}.sidebar-brand p,.calendar-header p,.hero-card p{margin:0;color:#b5bac1;line-height:1.6}.sidebar-brand{overflow:hidden}.sidebar-brand h1{font-size:.95rem}.sidebar-kicker,.panel-kicker{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#949cf7}.sidebar-nav{margin-top:2px}.nav-link{position:relative}.nav-link-icon{color:inherit}.sidebar-list{margin:10px 0 0;padding-left:18px;color:#b5bac1}.sidebar-list li+li{margin-top:8px}.calendar-main{padding:18px}.calendar-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.calendar-header h2{font-size:clamp(1.25rem,2vw,1.9rem)}.calendar-header p{max-width:760px;font-size:.95rem}.header-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#313338f0;color:#dbdee1;font-size:13px;white-space:nowrap}.calendar-hero{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(180px,1fr));gap:12px;margin-top:12px}.hero-card,.schedule-column,.event-card{padding:12px;border-radius:18px;background:#2b2d31eb;border:1px solid rgba(255,255,255,.06);box-shadow:0 18px 40px #0003}.hero-card-primary{background:linear-gradient(135deg,#5865f238,#5865f214),#2b2d31f5}.hero-stat{font-size:clamp(1.2rem,2vw,1.7rem);font-weight:800;color:#fff;line-height:1}.hero-card h3{font-size:.92rem}.hero-card p,.hero-card span{font-size:.85rem}.schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.schedule-grid-collapsed{margin-top:12px}.schedule-grid-collapsed .schedule-column{padding:12px}.schedule-grid-collapsed .schedule-slots{gap:8px}.schedule-top{margin-bottom:14px}.schedule-slots{display:flex;flex-direction:column;gap:10px}.slot-card{padding:12px 14px;border-radius:16px;background:#1e1f22f5;color:#dbdee1;display:flex;flex-direction:column;gap:6px}.slot-card-strong{margin-bottom:12px;background:#5865f22e;color:#fff}.slot-card-muted{color:#9ca3af}.events-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.events-stack{display:flex;flex-direction:column;gap:16px;margin-top:16px}.events-group{display:flex;flex-direction:column}.event-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.event-type,.event-date{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.event-type{background:#5865f233;color:#d7dcff}.event-date{background:#ffffff14;color:#dbdee1}.event-meta{display:flex;flex-direction:column;gap:10px;margin-top:16px;color:#b5bac1}.event-meta span{display:inline-flex;align-items:center;gap:8px}.event-description{margin:12px 0 0;color:#b5bac1;line-height:1.6}.month-section{margin-top:16px;padding:12px;border-radius:18px;background:#2b2d31eb;border:1px solid rgba(255,255,255,.06)}.month-section .month-board{min-height:min(56vh,520px)}.month-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.month-header h3{margin:0}.month-toolbar{display:flex;align-items:center;gap:12px}.month-toolbar-actions{display:inline-flex;align-items:center;gap:8px}.month-toolbar-button,.month-nav-button{border:0;border-radius:12px;background:#1e1f22f5;color:#f3f4f6;cursor:pointer}.month-toolbar-button{padding:8px 12px;font-weight:700}.month-nav-button{width:34px;height:34px;font-size:14px}.month-shell{display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px}.month-sidebar{display:flex;flex-direction:column;gap:14px}.mini-month-card,.mini-agenda-card{padding:10px;border-radius:16px;background:#1e1f22f5;border:1px solid rgba(255,255,255,.05)}.mini-month-title{margin-bottom:8px;font-weight:700;color:#f3f4f6;font-size:.95rem}.mini-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.mini-month-label{text-align:center;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af}.mini-month-cell{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:8px;font-size:11px;color:#d1d5db;background:#ffffff08}.mini-month-cell-muted{opacity:.35}.mini-month-cell-active{background:#5865f224}.mini-month-cell-today{background:#5865f2;color:#fff}.mini-agenda-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.mini-agenda-item{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border-radius:12px;color:#e5e7eb}.mini-agenda-item span{font-size:11px;color:#9ca3af}.mini-agenda-item strong{font-size:12px;line-height:1.4}.mini-agenda-item-event{background:#3b82f624}.mini-agenda-item-meeting{background:#10b98124}.mini-agenda-item-shift{background:#8b5cf624}.mini-agenda-empty{color:#9ca3af;line-height:1.6}.month-board{min-width:0}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;overflow:hidden;border-radius:16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.06)}.month-grid-label{padding:10px 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af;background:#1a1b1ff5}.month-cell{min-height:clamp(78px,10vh,116px);padding:8px;background:#1e1f22fa}.month-cell-muted{background:#18191cfa}.month-cell-today{box-shadow:inset 0 0 0 1px #5865f26b}.month-cell-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.month-cell-date{font-size:12px;font-weight:700;color:#fff}.month-cell-count{min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#5865f22e;color:#dbe4ff;font-size:10px;font-weight:700}.month-cell-items{display:flex;flex-direction:column;gap:4px;margin-top:6px}.month-item{display:flex;flex-direction:column;gap:4px;padding:6px 7px;border-radius:10px;border-left:3px solid transparent}.month-item-event{background:#3b82f629;border-left-color:#60a5fa}.month-item-meeting{background:#10b98129;border-left-color:#34d399}.month-item-shift{background:#8b5cf629;border-left-color:#a78bfa}.month-item-badge{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c7d2fe}.month-item-title{font-size:10.5px;line-height:1.25;color:#e5e7eb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-item-time{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#d1d5db}.month-item-more{color:#9ca3af;background:#ffffff0a;border-left-color:transparent}.empty-panel,.info-banner,.history-panel{margin-top:16px;padding:12px;border-radius:16px;background:#2b2d31eb;border:1px solid rgba(255,255,255,.06)}.empty-panel-compact,.info-banner-compact{padding:10px 12px;font-size:.85rem}@media(max-height:900px){.calendar-main{padding:14px}.calendar-hero{gap:10px;margin-top:10px}.hero-card,.schedule-column,.event-card,.month-section{padding:10px}.month-shell{grid-template-columns:160px minmax(0,1fr)}.month-section .month-board{min-height:min(48vh,420px)}.month-cell{min-height:clamp(62px,8vh,90px);padding:6px}.month-item{padding:4px 6px}.month-item-title{font-size:10px}.month-item-time{font-size:8px}}@media(max-height:760px){.calendar-header p,.info-banner,.empty-panel{font-size:.8rem}.hero-card p,.hero-card span{font-size:.78rem}.month-shell{grid-template-columns:140px minmax(0,1fr)}.mini-agenda-card{display:none}.month-section .month-board{min-height:min(44vh,340px)}}.empty-panel{color:#dbdee1}.empty-panel-error{border-color:#f8717159;color:#fecaca}.info-banner{color:#dbe4ff;background:#5865f21f}.history-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}.history-card{padding:14px 16px;border-radius:18px;background:#1e1f22f5;color:#dbdee1;display:flex;flex-direction:column;gap:6px}@media(max-width:980px){.calendar-sidebar{background:#111214f5}.calendar-hero,.schedule-grid,.events-list,.month-shell{grid-template-columns:1fr}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}@media(max-width:640px){.calendar-main{padding:20px}.calendar-header{flex-direction:column}.month-header,.month-toolbar{flex-direction:column;align-items:flex-start}.month-grid{grid-template-columns:1fr}.month-grid-label{display:none}}
