:root{--text:#1a1a1a;--text-muted:#6b6b6b;--bg:#fff;--bg-subtle:#f5f5f4;--border:#e2e2e0;--accent:#2f6f9e;--danger:#b3261e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#f2f2f0;--text-muted:#a1a1a1;--bg:#16171a;--bg-subtle:#1f2023;--border:#2e2f33;--accent:#5fa8dd;--danger:#e5877e}}*{box-sizing:border-box}body{min-height:100vh;margin:0}button{font:inherit;cursor:pointer}input,textarea{font:inherit;color:inherit}.app{flex-direction:column;max-width:640px;min-height:100svh;margin:0 auto;display:flex}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.app-header h1{margin:0;font-size:20px}.app-actions{gap:8px;display:flex}.app-actions button,.import-button{border:1px solid var(--border);background:var(--bg-subtle);color:var(--text);border-radius:6px;padding:6px 12px;font-size:14px}.import-button{align-items:center;display:inline-flex}.error-banner{background:color-mix(in srgb, var(--danger) 12%, transparent);border:1px solid var(--danger);color:var(--danger);border-radius:8px;align-items:center;gap:12px;margin:12px 20px 0;padding:10px 14px;font-size:14px;display:flex}.error-banner button{color:inherit;background:0 0;border:none;margin-left:auto;text-decoration:underline}.view-tabs{gap:8px;padding:12px 20px 0;display:flex}.view-tabs button{border:1px solid var(--border);background:var(--bg-subtle);color:var(--text-muted);border-radius:6px;padding:6px 12px;font-size:14px}.view-tabs button.active{color:var(--accent);border-color:var(--accent)}.app-main{flex:1;padding:16px 20px 32px}.new-event-button{border:1px dashed var(--border);width:100%;color:var(--accent);background:0 0;border-radius:8px;margin-bottom:16px;padding:12px;font-size:15px}.event-search-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:8px;margin-bottom:16px;padding:10px 12px;font-size:14px}.empty-state{color:var(--text-muted);text-align:center;padding:32px 0}.event-groups{flex-direction:column;gap:16px;display:flex}.event-group-header{color:var(--text-muted);margin:0 0 8px;font-size:12px;font-weight:500}.event-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.event-list-item{text-align:left;border:1px solid var(--border);background:var(--bg-subtle);border-radius:8px;flex-direction:column;gap:4px;width:100%;padding:12px 14px;display:flex}.event-title{font-weight:500}.event-meta{color:var(--text-muted);font-size:12px}.calendar-view{flex-direction:column;display:flex}.month-nav{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.month-nav button{border:1px solid var(--border);background:var(--bg-subtle);color:var(--text);border-radius:6px;padding:6px 12px;font-size:14px}.month-label{font-size:16px;font-weight:500}.today-button{border:1px solid var(--border);background:var(--bg-subtle);color:var(--text);border-radius:6px;align-self:flex-start;margin-bottom:12px;padding:6px 12px;font-size:14px}.month-grid{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:16px;display:grid}.weekday-label{text-align:center;color:var(--text-muted);padding:4px 0;font-size:12px}.day-cell{aspect-ratio:1;color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:14px;display:flex}.day-cell.out-of-month{color:var(--text-muted);opacity:.5}.day-cell.today{border-color:var(--accent)}.day-cell.selected{background:var(--bg-subtle);border-color:var(--border)}.day-dot{background:var(--accent);border-radius:50%;width:5px;height:5px}.selected-date-banner{background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;font-size:14px;display:flex}.selected-date-banner button{color:var(--accent);white-space:nowrap;background:0 0;border:none;font-size:14px;text-decoration:underline}.event-editor{flex-direction:column;gap:12px;display:flex}.event-editor-toolbar{justify-content:space-between;display:flex}.event-editor-toolbar button{border:1px solid var(--border);background:var(--bg-subtle);color:var(--text);border-radius:6px;padding:6px 12px}.delete-button{color:var(--danger)}.event-title-input{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:10px 12px;font-size:18px;font-weight:500}.event-location-input{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:10px 12px;font-size:14px}.all-day-toggle{align-items:center;gap:8px;font-size:14px;display:flex}.date-range-fields,.time-range-fields{gap:12px;display:flex}.field-label{color:var(--text-muted);flex-direction:column;flex:1;gap:4px;font-size:12px;display:flex}.field-label input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;padding:10px 12px;font-size:14px}.event-notes-input{border:1px solid var(--border);background:var(--bg);resize:vertical;border-radius:8px;min-height:25vh;padding:10px 12px;font-size:15px}
