* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
       background: #fafafa; color: #222; line-height: 1.5; }
.container { max-width: 900px; margin: 2rem auto; padding: 0 1rem; }
header { display: flex; justify-content: space-between; align-items: center; padding: 1rem 0; border-bottom: 1px solid #ddd; }
header h1 { font-size: 1.4rem; }
header .user { font-size: 0.9rem; color: #666; }
.btn { padding: 0.6rem 1.2rem; border: 1px solid #333; background: #fff;
       cursor: pointer; border-radius: 4px; font-size: 0.95rem; }
.btn-primary { background: #1a73e8; border-color: #1a73e8; color: #fff; }
.btn-primary:hover { background: #1557b0; }
.meeting-list { list-style: none; margin-top: 1.5rem; }
.meeting-list li { padding: 1rem; border: 1px solid #ddd; border-radius: 6px;
                   margin-bottom: 0.5rem; cursor: pointer; background: #fff; }
.meeting-list li:hover { border-color: #1a73e8; }
.meeting-meta { font-size: 0.85rem; color: #888; }
textarea#transcript { width: 100%; min-height: 400px; padding: 1rem;
                      font-family: ui-monospace, "Cascadia Code", monospace;
                      font-size: 0.95rem; border: 1px solid #ccc; border-radius: 4px; }
.status { display: inline-block; padding: 0.2rem 0.5rem; border-radius: 3px;
          font-size: 0.75rem; text-transform: uppercase; }
.status-recording { background: #fef3c7; color: #92400e; }
.status-processing { background: #dbeafe; color: #1e40af; }
.status-completed { background: #d1fae5; color: #065f46; }
.status-interrupted { background: #fee2e2; color: #991b1b; }
.empty { text-align: center; color: #888; padding: 3rem 1rem; }
