:root{--bg: #f7f3ec;--surface: #fdfbf7;--border: #e3dacc;--text: #2a211b;--text-secondary: #8a7b6e;--accent: #2a2a28;--accent-tint: #ece6dc;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--radius: 3px;--maxw: 960px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font-family:inherit;cursor:pointer}input,select,button{font-family:inherit;font-size:inherit;color:inherit}a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent}a:hover{border-bottom-color:var(--accent)}.page{max-width:var(--maxw);margin:0 auto;padding:0 28px 96px}.divider{height:1px;background:var(--border);border:0;margin:0}.section-label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary);font-weight:500}.header{padding:56px 0 28px;display:grid;grid-template-columns:1fr auto;align-items:start;gap:24px}.wordmark{font-family:var(--font-display);font-weight:600;font-size:40px;line-height:1;letter-spacing:.35em;text-transform:uppercase;margin:0 -.35em 0 0}.header-subtitle{margin:12px 0 0;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-secondary);font-weight:500}.identity{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-secondary);white-space:nowrap;padding-top:6px}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='%238a7b6e' fill='none' stroke-width='1.2'/></svg>") no-repeat right 12px center;border:1px solid var(--border);border-radius:var(--radius);padding:8px 32px 8px 12px;color:var(--text);font-size:14px;transition:border-color .15s ease}.select:hover{border-color:var(--text-secondary)}.select:focus{outline:none;border-color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:#fdfbf7;border:1px solid var(--accent);border-radius:var(--radius);padding:11px 22px;font-size:13px;font-weight:500;letter-spacing:.04em;transition:opacity .15s ease,background .15s ease}.btn:hover:not(:disabled){background:#3d3d3a}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:transparent;border-color:var(--text-secondary)}.btn-text{background:transparent;border:0;color:var(--text-secondary);padding:4px 6px;font-size:12px;letter-spacing:.04em;border-radius:var(--radius);transition:color .15s ease}.btn-text:hover:not(:disabled){color:var(--accent)}.btn-text:disabled{opacity:.4;cursor:not-allowed}.spinner{width:13px;height:13px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.field{display:flex;flex-direction:column;gap:8px}.field-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);font-weight:500}.input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:11px 13px;color:var(--text);width:100%;transition:border-color .15s ease}.input::placeholder{color:#b6a999}.input:hover{border-color:var(--text-secondary)}.input:focus{outline:none;border-color:var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:999px;padding:7px 14px;font-size:13px;color:var(--text);background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .15s ease,background .15s ease,color .15s ease}.chip:hover{border-color:var(--text-secondary)}.chip input{display:none}.chip.is-selected{background:var(--accent);border-color:var(--accent);color:#fdfbf7}.chip .chip-tick{font-size:11px;opacity:0}.chip.is-selected .chip-tick{opacity:1}.chip-warning{border-style:dashed;border-color:#c9a24a;color:#8a6a1e;background:#faf3e2;cursor:default}.notice{border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;font-size:14px}.notice-conflict{border-color:var(--accent);background:var(--accent-tint);color:var(--text)}.notice-conflict .notice-title{color:var(--accent);font-weight:500;margin:0 0 8px}.notice-conflict ul{margin:0;padding:0;list-style:none}.notice-conflict li{padding:3px 0}.notice-conflict .conflict-name{font-weight:500}.notice-success{border-color:#9db08c;background:#eef2e8;color:#3f4a33}.notice-error{border-color:var(--accent);background:var(--accent-tint);color:var(--accent)}.suggestion{margin-top:12px;padding-top:12px;border-top:1px solid rgba(42,42,40,.22);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.hint{font-size:13px;color:var(--text-secondary);font-style:italic}.quickadd{margin:8px 0 40px}.quickadd-row{display:flex;gap:12px;margin-top:14px}.quickadd-row .input{flex:1}.quickadd .btn{white-space:nowrap}.list-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:40px 0 8px}.toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.toggle button{background:transparent;border:0;padding:8px 18px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);transition:background .15s ease,color .15s ease}.toggle button.is-active{background:var(--accent);color:#fdfbf7}.nav{display:flex;align-items:center;gap:6px}.nav-arrow{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:var(--text);transition:border-color .15s ease}.nav-arrow:hover{border-color:var(--text-secondary)}.nav-current{font-family:var(--font-body);font-size:17px;font-weight:500;font-variant-numeric:lining-nums tabular-nums;letter-spacing:.01em;min-width:190px;text-align:center}.tz-note{font-size:12px;color:var(--text-secondary)}.day-group{margin-top:28px}.day-group-header{font-family:var(--font-body);font-size:15px;font-weight:600;font-variant-numeric:lining-nums tabular-nums;letter-spacing:.01em;margin:0 0 4px;display:flex;align-items:baseline;gap:12px}.day-group-header.is-today .today-tag{font-family:var(--font-body);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:2px 9px}.meeting{display:grid;grid-template-columns:130px 1fr auto;gap:20px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--border)}.meeting:first-of-type{border-top:1px solid var(--border)}.meeting-time{font-variant-numeric:tabular-nums;color:var(--text);font-weight:500;letter-spacing:.02em}.meeting-body{min-width:0}.meeting-title{font-size:16px;margin:0 0 4px}.meeting-participants{font-size:13px;color:var(--text-secondary)}.meeting-actions{align-self:center}.empty-day{color:var(--text-secondary);font-style:italic;font-size:14px;padding:14px 0}.empty-state{text-align:center;padding:72px 24px;color:var(--text-secondary)}.empty-state .empty-mark{font-family:var(--font-display);font-size:30px;letter-spacing:.2em;color:var(--border);margin-bottom:14px}.loading-row{padding:40px 0;text-align:center;color:var(--text-secondary);font-style:italic}@media (max-width: 640px){.page{padding:0 18px 72px}.header{grid-template-columns:1fr;padding-top:40px}.wordmark{font-size:30px;letter-spacing:.28em}.identity{padding-top:0}.quickadd-row{flex-direction:column}.meeting{grid-template-columns:1fr;gap:6px}.meeting-actions{align-self:start}.nav-current{min-width:130px;font-size:15px}.form-grid{grid-template-columns:1fr!important}.time-select-row .select{padding:11px 26px 11px 10px;background-position:right 9px center;min-width:0}}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.form-grid .field-full{grid-column:1 / -1}.form-actions{display:flex;align-items:center;gap:16px;margin-top:22px}.time-select-row{display:flex;align-items:center;gap:8px}.time-select-row .select{padding:11px 30px 11px 12px;flex:1}.time-select-sep{color:var(--text-secondary)}
