:root{--bg:#f8fafc;--panel:#ffffff;--fg:#111827;--muted:#6b7280;--line:#e5e7eb;--accent:#2563eb;--color-bg:var(--bg);--color-panel:var(--panel);--color-fg:var(--fg);--color-muted:var(--muted);--color-border:var(--line);--color-brand:var(--accent);--color-brand-fg:#ffffff;--color-danger:#dc2626}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;background:var(--bg);color:var(--fg);line-height:1.6}.wrap{max-width:960px;margin:0 auto;padding:32px 20px}.head{display:flex;align-items:center;justify-content:space-between;gap:12px}button.ghost{background:transparent;border:1px solid var(--line);color:var(--fg);border-radius:8px;padding:8px 14px;cursor:pointer}a{color:var(--accent)}h1{font-size:1.4rem;margin:20px 0 12px}h2{font-size:1.1rem;margin:20px 0 8px}.brand{font-weight:700;font-size:1.15rem;color:var(--fg);text-decoration:none}.nav{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 6px;border-bottom:1px solid var(--line);padding-bottom:10px}.nav a{padding:6px 12px;border-radius:999px;text-decoration:none;color:var(--fg)}.nav a.on{background:var(--accent);color:#fff}.error{color:var(--color-danger);background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.error,.ok{padding:8px 12px}.ok{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px}.muted{color:var(--muted)}.small{font-size:.85rem}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:10px 0}.card h3{margin:4px 0 6px;font-size:1.05rem}.row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.between{justify-content:space-between}.badge{display:inline-block;font-size:.78rem;padding:2px 8px;border-radius:999px;background:#eef2ff;color:#3730a3}.badge.open{background:#ecfdf5;color:#065f46}.badge.confirmed{background:#2563eb;color:#fff}.badge.waiting_speaker{background:#fff7ed;color:#9a3412}.badge.closed,.badge.done{background:#f3f4f6;color:#4b5563}.badge.hot{background:#fef2f2;color:#b91c1c}.tag{display:inline-block;font-size:.78rem;padding:1px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}.dates{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.date{border:1px solid var(--line);border-radius:10px;padding:6px 10px;min-width:150px}.date.mine{border-color:var(--accent);background:#eff6ff}.stack,form.stack{display:grid;grid-gap:12px;gap:12px}label{display:grid;grid-gap:4px;gap:4px;font-weight:600;font-size:.92rem}label span.hint{font-weight:400;color:var(--muted);font-size:.82rem}input[type=date],input[type=email],input[type=number],input[type=text],select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;width:100%}textarea{min-height:90px}button{font:inherit}button.primary{background:var(--accent);color:#fff;border:0;border-radius:8px;padding:9px 16px;cursor:pointer}button.danger{background:#fff;color:var(--color-danger);border:1px solid #fecaca;border-radius:8px;padding:8px 14px;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 10px;cursor:pointer;font-size:.85rem;font-weight:400}.chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}.tabs{display:flex;gap:6px;margin:8px 0 12px}.cal{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.cal .dow{text-align:center;font-size:.8rem;color:var(--muted)}.cal .cell{min-height:78px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:4px 6px;font-size:.78rem}.cal .cell.off{background:#f3f4f6;color:var(--muted)}.cal .cell.closed{background:#fef2f2}.cal .cell.sel{outline:2px solid var(--accent)}.cal .cell button{all:unset;cursor:pointer;display:block;width:100%}.cal .ev{display:block;background:#2563eb;color:#fff;border-radius:4px;padding:0 4px;margin-top:2px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}table.list{width:100%;border-collapse:collapse;font-size:.9rem}table.list td,table.list th{text-align:left;border-bottom:1px solid var(--line);padding:6px 4px;vertical-align:top}@media (max-width:640px){.cal .cell{min-height:56px}.date{min-width:0;flex:1 1 100%}}.pre,.secret{white-space:pre-wrap}.secret{font-size:1.1rem;letter-spacing:1px;padding:8px 10px;background:var(--panel);border:1px solid var(--line);border-radius:8px;word-break:break-all}