:root{--bg:#fff;--ink:#0a0a0a;--ink-soft:#2b2b2b;--muted:#6b6b6b;--line-soft:#e6e6e6;--radius:0px;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--warn:#b91c1c}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;text-transform:lowercase}a{color:inherit;text-decoration:none}a:hover{color:var(--ink)}h1,h2,h3{font-weight:400;letter-spacing:-.02em;margin:0}p{margin:0;color:var(--ink-soft)}button{font:inherit;background:var(--bg);color:var(--ink);border:1px solid var(--ink);padding:.5rem .9rem;cursor:pointer;text-transform:lowercase;border-radius:var(--radius)}button:hover{background:var(--ink);color:var(--bg)}button:disabled{opacity:.4;cursor:not-allowed}button:disabled:hover{background:var(--bg);color:var(--ink)}button.ghost{border-color:var(--line-soft)}input,select,textarea{font:inherit;background:var(--bg);color:var(--ink);border:1px solid var(--line-soft);padding:.55rem .7rem;width:100%;border-radius:var(--radius);text-transform:none}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink)}.eyebrow{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.04em;color:var(--muted)}.nav{display:flex;justify-content:space-between;padding:1rem clamp(1.25rem,4vw,3rem);border-bottom:1px solid var(--line-soft)}.brand,.nav{align-items:center}.brand{display:inline-flex;gap:.625rem;font-family:var(--font-mono);font-size:.875rem}.brand-mark{width:22px;height:22px;display:inline-block}.empty{margin:8vh auto;max-width:460px;padding:0 1rem;display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.empty h1{font-size:1.6rem}.empty p{color:var(--muted);font-size:.9rem;text-transform:lowercase}.empty .danger{color:var(--warn);font-family:var(--font-mono);font-size:.75rem;border:1px solid var(--warn);padding:.55rem .75rem}.layout{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:1.5rem;gap:1.5rem;padding:clamp(1rem,3vw,2rem);align-items:start}@media (max-width:1024px){.layout{grid-template-columns:1fr}}.panel{display:flex;flex-direction:column;gap:1rem}.toolbar-row{justify-content:space-between;padding:1rem clamp(1.25rem,3vw,2rem) .5rem}.toolbar,.toolbar-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.feedback{font-family:var(--font-mono);font-size:.6875rem;color:var(--muted)}.feedback.error{color:var(--warn)}.account-pill{font-family:var(--font-mono);font-size:.6875rem;color:var(--muted);border:1px solid var(--line-soft);padding:.4rem .6rem;text-transform:lowercase}.events{display:flex;flex-direction:column;gap:.4rem}.event{display:grid;grid-template-columns:110px 1fr;grid-gap:1rem;gap:1rem;border:1px solid var(--line-soft);padding:.7rem .85rem}.event.today{border-color:var(--ink)}.event-when{font-family:var(--font-mono);font-size:.6875rem;color:var(--muted);line-height:1.5;text-transform:lowercase}.event-when .day{color:var(--ink)}.event-body{display:flex;flex-direction:column;gap:.25rem;text-transform:none}.event-title{font-size:.95rem;color:var(--ink)}.event-meta{font-family:var(--font-mono);font-size:.6875rem;color:var(--muted);display:flex;gap:.85rem;flex-wrap:wrap;text-transform:lowercase}.event-attendees{font-size:.8rem;color:var(--ink-soft)}.section{border:1px solid var(--line-soft);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.7rem}.section h2{font-size:1.05rem}.section .field{display:flex;flex-direction:column;gap:.35rem}.section .field label{font-family:var(--font-mono);font-size:.6875rem;color:var(--muted)}.ai-output{border:1px solid var(--line-soft);padding:.85rem 1rem;text-transform:none}.ai-output .label{font-family:var(--font-mono);font-size:.6875rem;color:var(--muted);text-transform:lowercase;margin-bottom:.4rem}.ai-output p{color:var(--ink-soft);font-size:.9rem;line-height:1.55}.ai-output ul{margin:.5rem 0 0 1rem;padding:0;color:var(--ink-soft);font-size:.85rem}.ai-output ul li{margin-bottom:.3rem}.slot-list{display:flex;flex-direction:column;gap:.4rem;margin-top:.5rem}.slot{border:1px solid var(--line-soft);padding:.55rem .75rem;font-size:.875rem;color:var(--ink);text-transform:lowercase}