@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap);*{box-sizing:border-box}body{background:#f8fafc;color:#0f172a;font-family:Space Grotesk,Manrope,system-ui,-apple-system,sans-serif;margin:0}button,input,textarea{font-family:inherit}:root{--bg:#f8fafc;--bg-panel:#fff;--bg-strong:#0f172a;--bg-muted:#f8fafc;--text:#0f172a;--text-muted:#475569;--accent:linear-gradient(135deg,#5f6af3,#1f9f83);--shadow-strong:#0f172a40;--shadow:#0f172a14;--border:#e2e8f0;--chip-muted:#e2e8f0;--hover:#eef2ff;--today:#eef2ff}.app-shell{background:radial-gradient(circle at 20% 20%,#5f6af31f,#0000 30%),radial-gradient(circle at 80% 10%,#1f9f831a,#0000 28%),linear-gradient(180deg,#f8fafc,#f8fafc);background:radial-gradient(circle at 20% 20%,#5f6af31f,#0000 30%),radial-gradient(circle at 80% 10%,#1f9f831a,#0000 28%),linear-gradient(180deg,var(--bg) 0,var(--bg-muted) 100%);color:#0f172a;color:var(--text);min-height:100vh;padding:32px}.calendar-header{gap:24px;justify-content:space-between;margin-bottom:24px}.brand,.calendar-header{align-items:center;color:#0f172a;color:var(--text);display:flex}.brand{gap:12px}.brand-mark{background:linear-gradient(135deg,#5f6af3,#1f9f83);background:var(--accent);border-radius:12px;box-shadow:0 10px 30px #0f172a40;box-shadow:0 10px 30px var(--shadow-strong);color:#fff;font-size:18px;font-weight:700;letter-spacing:.5px;padding:12px 14px}.brand-title{font-size:22px;font-weight:700}.brand-subtitle{color:#475569;color:var(--text-muted);font-size:14px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.theme-picker select{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;color:#0f172a;color:var(--text);cursor:pointer;font-weight:700;padding:8px 12px}.theme-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.theme-grid .field{background:#f8fafc;background:var(--bg-muted);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;padding:10px}.controls{flex-wrap:wrap;gap:16px}.controls,.navigation{align-items:center;display:flex}.navigation{gap:12px}.header-actions{align-items:center;display:flex;gap:8px}.filter-badge{background:#0f172a;border-radius:10px;box-shadow:0 8px 20px #0f172a33;color:#fff;font-size:13px;font-weight:700;padding:8px 12px}.kbd-button{align-items:center;display:inline-flex;font-weight:700;gap:6px}.kbd-icon{background:#0f172a;background:var(--bg-strong);border-radius:8px;box-shadow:inset 0 1px 0 #ffffff1a;color:#fff;font-family:SF Pro Display,Menlo,monospace;padding:4px 8px}.nav-month{align-items:center;background:#fff;background:var(--bg-panel);border-radius:12px;box-shadow:0 8px 24px #0f172a14;box-shadow:0 8px 24px var(--shadow);display:flex;gap:8px;padding:8px 12px}.nav-label{font-weight:600}.view-switcher{display:flex;gap:8px}.pill{background:#e2e8f0;background:var(--chip-muted);border:none;border-radius:16px;color:#0f172a;color:var(--text);cursor:pointer;font-weight:600;padding:9px 14px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.pill:hover{transform:translateY(-1px)}.pill.ghost{background:#fff;background:var(--bg-panel);box-shadow:0 8px 24px #0f172a14;box-shadow:0 8px 24px var(--shadow)}.pill.ghost.active{background:#0f172a;background:var(--bg-strong);color:#fff}.pill.primary{background:linear-gradient(135deg,#5f6af3,#1f9f83);background:var(--accent);box-shadow:0 12px 30px #5f6af366;color:#fff}.pill.ghost.danger{border:1px solid #fecdd3;color:#ef4444}.icon-button{align-items:center;background:#e2e8f0;background:var(--chip-muted);border:none;border-radius:10px;color:#0f172a;color:var(--text);cursor:pointer;display:inline-flex;font-weight:700;height:30px;justify-content:center;transition:background .15s ease,transform .15s ease;width:30px}.icon-button:hover{background:#cbd5e1;transform:translateY(-1px)}.calendar-content{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr}.primary-panel{background:#fff;background:var(--bg-panel);border-radius:18px;box-shadow:0 20px 50px #0f172a14;box-shadow:0 20px 50px var(--shadow);padding:18px}.sidebar{display:flex;flex-direction:column;gap:12px}.sidebar-card{background:#fff;background:var(--bg-panel);border-radius:18px;box-shadow:0 18px 40px #0f172a14;box-shadow:0 18px 40px var(--shadow);padding:16px}.sidebar-card.highlight{background:linear-gradient(180deg,#0f172a,#111827);color:#e2e8f0}.sidebar-card.highlight .sidebar-title{color:#fff}.sidebar-title{font-weight:700;margin-bottom:4px}.sidebar-subtitle{color:#475569;color:var(--text-muted);font-size:14px;margin-bottom:12px}.sidebar-card.highlight .sidebar-subtitle{color:#cbd5e1}.full-width{justify-content:center;width:100%}.day-label-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.day-label{color:#475569;color:var(--text-muted);font-size:12px;letter-spacing:.5px;text-align:center;text-transform:uppercase}.calendar-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr)}.day-cell{background:#f8fafc;background:var(--bg-muted);border:1px solid #0000;border-radius:14px;cursor:pointer;min-height:140px;overflow:hidden;padding:12px;position:relative;transition:border .15s ease,box-shadow .15s ease,transform .15s ease}.day-cell:hover{border-color:#cbd5e1;box-shadow:0 12px 24px #0f172a0f;transform:translateY(-1px)}.day-cell.today{background:#eef2ff;background:var(--today);border:1px solid #5f6af3}.day-cell.drag-hover,.day-view.drag-hover,.week-day.drag-hover{border:1px dashed #5f6af3;box-shadow:0 0 0 2px #5f6af326}.muted-day{opacity:.6}.day-cell-header{align-items:center;display:flex;justify-content:space-between}.day-heat{background:#0000;border-radius:14px;inset:0;pointer-events:none;position:absolute;z-index:0}.day-content{display:flex;flex-direction:column;gap:8px;height:100%;position:relative;z-index:1}.day-number{font-size:16px;font-weight:700}.event-stack{gap:6px}.event-chip,.event-stack{display:flex;flex-direction:column}.event-chip{border:none;border-radius:12px;box-shadow:0 10px 24px #0f172a26;color:#fff;cursor:pointer;gap:4px;padding:10px;text-align:left;transition:transform .1s ease}.event-chip:hover{transform:translateY(-1px)}.event-chip.is-resizing{opacity:.9;outline:2px dashed #0f172a}.event-chip-time{font-size:12px;opacity:.9}.event-chip-title{font-weight:700}.event-chip-meta{display:flex;flex-wrap:wrap;gap:6px}.resize-row{display:flex;gap:6px;margin-top:4px}.resize-handle{background:#0f172a33;border:none;border-radius:8px;color:#fff;cursor:grab;font-size:12px;padding:4px 8px}.resize-handle:active{cursor:grabbing;opacity:.8}.template-chip-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:6px}.template-chip{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 18px #0f172a0f;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:10px;text-align:left}.template-chip .template-name{color:#0f172a;font-weight:700}.template-chip .template-desc{color:#475569;font-size:12px;line-height:1.3}.template-chip.active{background:#e2e8f0;border:2px solid #0f172a}.mini-skip{background:#ef44441f;border:none;border-radius:8px;color:#b91c1c}.mini-secondary,.mini-skip{cursor:pointer;font-weight:600;padding:6px 10px;width:-webkit-fit-content;width:fit-content}.mini-secondary{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#0f172a}.mini-secondary.ghosty{background:#f8fafc}.share-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.attendee-editor{display:flex;flex-direction:column;gap:8px}.attendee-add-row{grid-gap:8px;align-items:stretch;display:grid;gap:8px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(108px,auto)}.attendee-add-row .pill{width:100%}.attendee-list{display:flex;flex-direction:column;gap:6px}.attendee-row{grid-gap:8px;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:grid;gap:8px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(42px,auto);padding:8px 10px}.attendee-name{font-weight:700}.attendee-chip{background:#e0f2fe;color:#0f172a}.attendee-chip.accepted{background:#dcfce7;color:#166534}.attendee-chip.maybe{background:#fff7ed;color:#b45309}.attendee-chip.declined{background:#fee2e2;color:#b91c1c}.attachment-editor{display:flex;flex-direction:column;gap:8px}.attachment-add-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1.2fr) minmax(0,1.4fr) minmax(108px,auto)}.attachment-add-row .pill{width:100%}.attachment-list{display:flex;flex-direction:column;gap:6px}.attachment-row{grid-gap:8px;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:grid;gap:8px;grid-template-columns:1fr auto;padding:8px 10px}.attachment-meta{display:flex;flex-direction:column;gap:2px}.attachment-label{font-weight:700}.checklist-row{align-items:center;color:#0f172a;color:var(--text);display:flex;font-weight:600;gap:8px}.checklist-row input{height:16px;width:16px}.checklist-row .done{color:#475569;color:var(--text-muted);text-decoration:line-through}.suggestion-title{color:#475569;color:var(--text-muted);font-size:12px;margin-top:4px}.suggestion-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.suggestion-chip{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:999px;color:#0f172a;color:var(--text);cursor:pointer;font-weight:700;padding:6px 10px;transition:transform .1s ease,box-shadow .1s ease}.suggestion-chip:hover{box-shadow:0 8px 16px #00000014;transform:translateY(-1px)}.agenda-checklist,.event-chip-checklist{display:flex;flex-direction:column;gap:4px;margin-top:6px}.event-chip-notes{align-items:center;color:#475569;color:var(--text-muted);display:flex;font-size:13px;gap:6px}.attachment-link{color:#0f172a;text-decoration:none;word-break:break-all}.agenda-attachments .chip.link.outline,.event-chip-meta .chip.link.outline{background:#fff;border:1px solid #e2e8f0;color:#0f172a}.agenda-attachments{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.share-card{align-items:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;display:flex;gap:12px;justify-content:space-between;padding:12px}.share-title{font-weight:700}.share-subtitle{color:#475569;font-size:13px}.share-actions{display:flex;flex-wrap:wrap;gap:8px}.share-actions.inline{justify-content:flex-end}.event-chip-repeat{background:#fff3;padding:4px 6px}.event-chip-repeat,.event-chip-span{border-radius:8px;font-size:11px;width:-webkit-fit-content;width:fit-content}.event-chip-span{background:#ffffff29;padding:4px 8px}.event-chip.multi-span{overflow:visible;position:relative}.event-chip.multi-span.has-left:before,.event-chip.multi-span.has-right:after{background:var(--event-color);content:"";height:6px;position:absolute;top:50%;transform:translateY(-50%);width:10px}.event-chip.multi-span.has-left:before{border-bottom-left-radius:6px;border-top-left-radius:6px;left:-12px}.event-chip.multi-span.has-right:after{border-bottom-right-radius:6px;border-top-right-radius:6px;right:-12px}.event-span-meter{background:#fff3;border-radius:8px;height:6px;overflow:hidden;width:100%}.event-span-meter-fill{background:#0f172a;border-radius:8px;height:100%}.empty-slot{color:#94a3b8;font-size:13px}.empty-slot.prominent{background:#f8fafc;border-radius:12px;color:#0f172a;font-weight:600;padding:12px}.week-view{display:flex;flex-direction:column;gap:12px}.timeline-view{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;padding:12px}.timeline-wrapper{position:relative}.timeline-grid{grid-gap:6px;align-items:start;display:grid;gap:6px;grid-template-columns:80px repeat(7,1fr)}.timeline-time-col{color:#475569;color:var(--text-muted);font-weight:700;padding:6px}.timeline-day-header{background:#f8fafc;background:var(--bg-muted);border-radius:10px;font-weight:700;padding:6px;text-align:center}.timeline-all-day-label{color:#475569;color:var(--text-muted);font-size:12px;padding:6px}.timeline-all-day-cell{border:1px dashed #e2e8f0;border:1px dashed var(--border);border-radius:10px;gap:6px;min-height:48px}.timeline-all-day-cell,.timeline-cell{background:#f8fafc;background:var(--bg-muted);display:flex;flex-direction:column;padding:6px}.timeline-cell{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;gap:4px;min-height:60px}.timeline-event{background:#fff;background:var(--bg-panel);border-radius:8px;box-shadow:0 6px 12px #0f172a14;box-shadow:0 6px 12px var(--shadow);padding:6px}.timeline-event-title{font-weight:700}.timeline-event-time{color:#475569;color:var(--text-muted);font-size:12px}.week-columns{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr)}.week-day{background:#f8fafc;background:var(--bg-muted);border:1px solid #0000;border-radius:14px;padding:12px;transition:border .15s ease,box-shadow .15s ease}.week-day:hover{border-color:#cbd5e1;box-shadow:0 10px 22px #0f172a0f}.week-day.today{background:#eef2ff;background:var(--today);border-color:#5f6af3}.week-day-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.week-day-name{font-weight:700}.week-day-date{color:#475569;font-size:13px}.mini-action{background:#0f172a;border:none;border-radius:10px;color:#fff;cursor:pointer;padding:6px 10px}.event-column{gap:8px}.day-view,.event-column{display:flex;flex-direction:column}.day-view{gap:12px}.day-view-header{align-items:center;display:flex;justify-content:space-between}.day-title{font-size:22px;font-weight:700}.day-subtitle{color:#475569}.day-agenda{display:flex;flex-direction:column;gap:10px}.virtual-scroll{max-height:60vh;overflow-y:auto;padding-right:4px}.virtual-window{display:flex;flex-direction:column;gap:10px}.week-day .virtual-scroll{max-height:65vh}.agenda-virtual.virtual-scroll{max-height:70vh}.activity-list{display:flex;flex-direction:column;gap:10px}.activity-row{grid-gap:10px;align-items:start;display:grid;gap:10px;grid-template-columns:10px 1fr}.activity-dot{background:#0f172a;border-radius:50%;height:10px;margin-top:6px;width:10px}.activity-body{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:8px 10px}.activity-message{color:#0f172a;font-weight:700}.activity-time{color:#475569;font-size:12px}.conflict-warning{background:#fef2f2;border:1px solid #fecdd3;border-radius:10px;color:#b91c1c;font-weight:700;padding:8px 10px}.agenda-item{grid-gap:12px;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;display:grid;gap:12px;grid-template-columns:120px 1fr auto;padding:12px}.agenda-item:hover{box-shadow:0 12px 28px #0f172a14}.agenda-time{color:#475569;font-weight:600}.agenda-title{font-weight:700;margin-bottom:4px}.agenda-span{color:#475569;font-size:13px;font-weight:600}.agenda-meta{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}.agenda-attendees{color:#334155;font-size:13px}.agenda-repeat{color:#475569;font-size:13px;font-weight:600;margin-bottom:4px}.agenda-description{color:#475569}.agenda-actions,.agenda-handles{align-items:center;display:flex;gap:8px}.upcoming-list{display:flex;flex-direction:column;gap:10px}.upcoming-item{grid-gap:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;display:grid;gap:10px;grid-template-columns:64px 1fr;padding:10px;transition:box-shadow .15s ease,transform .15s ease}.upcoming-item:hover{box-shadow:0 12px 26px #0f172a14;transform:translateY(-1px)}.upcoming-date{align-items:center;background:#0f172a;border-radius:10px;color:#fff;display:flex;flex-direction:column;font-weight:700;justify-content:center;padding:6px}.upcoming-day{font-size:16px}.upcoming-month{font-size:12px;opacity:.9}.upcoming-title{font-weight:700}.upcoming-time{color:#475569;font-size:13px}.modal-backdrop{align-items:center;background:#0f172a66;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:20}.modal{animation:pop .2s ease;background:#fff;border-radius:16px;box-shadow:0 30px 80px #0f172a40;max-width:640px;width:100%}.modal-header{align-items:center;display:flex;justify-content:space-between;padding:18px 20px 10px}.modal-title{font-size:18px;font-weight:700}.modal-subtitle{color:#475569;font-size:13px}.modal-body{display:flex;flex-direction:column;gap:10px;padding:0 20px 20px}.public-modal{max-width:520px}.share-view{text-align:left}.share-heading{font-size:20px;font-weight:800}.share-range{color:#475569;font-weight:600}.share-line{background:#f1f5f9;border-radius:10px;color:#0f172a;font-weight:600;padding:8px 10px}.share-link{color:#0f172a;display:inline-block;font-weight:700;margin:4px 0;text-decoration:none}.share-attachments{display:flex;flex-direction:column;gap:4px}.share-attendees{display:flex;flex-wrap:wrap;gap:6px}.share-description{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;line-height:1.4;padding:10px}.share-pill{align-items:center;border-radius:999px;box-shadow:0 8px 20px #0000001a;color:#fff;display:inline-flex;font-weight:700;justify-content:center;letter-spacing:.5px;padding:6px 10px;width:-webkit-fit-content;width:fit-content}.field{color:#0f172a;display:flex;flex-direction:column;font-weight:600;gap:6px}.field-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.field input,.field textarea{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:14px;padding:10px 12px}.field textarea{min-height:80px;resize:vertical}.error-text{color:#ef4444;font-size:12px}.field input[type=color]{background:#fff;border:1px solid #cbd5e1;height:42px;padding:4px;width:48px}.field select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:14px;padding:10px 12px}.filters{display:flex;flex-direction:column;gap:10px}.color-chips{display:flex;flex-wrap:wrap;gap:8px}.color-chip{background:#fff;border:1px solid #cbd5e1;border-radius:10px;color:#0f172a;cursor:pointer;font-weight:600;min-height:32px;min-width:44px;padding:8px 10px}.color-chip.active{border:2px solid #0f172a;color:#0f172a}.color-chip:not(.active):hover{box-shadow:0 8px 14px #0f172a1a;transform:translateY(-1px)}.filter-count{color:#0f172a;font-size:12px;margin-left:6px}.filter-actions{display:flex;flex-wrap:wrap;gap:8px}.presets{display:flex;flex-direction:column;gap:6px}.preset-chips{display:flex;flex-wrap:wrap;gap:8px}.shortcut-row{align-items:center;display:flex;font-weight:600;gap:10px}.summary-range{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.summary-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.summary-card{background:#f8fafc;background:var(--bg-muted);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;padding:10px}.summary-label{color:#475569;color:var(--text-muted);font-size:12px}.summary-value{color:#0f172a;color:var(--text);font-size:20px;font-weight:800}.chip{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:4px 8px}.chip.muted{background:#e2e8f0;color:#0f172a}.chip.link{background:#0f172a;color:#fff;text-decoration:none}.checkbox{color:#0f172a;font-weight:600}.checkbox,.modal-actions{align-items:center;display:flex;gap:8px}.modal-actions{margin-top:4px}.spacer{flex:1 1}.toast{align-items:center;background:#0f172a;border-radius:12px;bottom:24px;box-shadow:0 18px 40px #0f172a59;color:#fff;display:flex;gap:8px;padding:12px 14px;position:fixed;right:24px;z-index:30}@keyframes pop{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1100px){.calendar-content{grid-template-columns:1fr}}@media (max-width:768px){.calendar-header{align-items:flex-start;flex-direction:column}.view-switcher{flex-wrap:wrap}.calendar-grid,.day-label-row,.week-columns{grid-template-columns:repeat(2,1fr)}.agenda-item{grid-template-columns:1fr}.controls{align-items:flex-start;flex-direction:column}.attachment-add-row,.attachment-row,.attendee-add-row,.attendee-row{grid-template-columns:1fr}.navigation{justify-content:space-between;width:100%}.view-switcher{justify-content:flex-start;width:100%}.icon-button,.pill{min-height:42px}}@media (max-width:560px){.calendar-content{gap:10px}.event-chip,.primary-panel{padding:12px}.nav-month{justify-content:space-between;width:100%}.header-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}}
/*# sourceMappingURL=main.c56fad33.css.map*/