:root{color-scheme:light dark;--bg: #f5f6f8;--surface: #ffffff;--text: #1a1d23;--muted: #6b7280;--border: #e2e5ea;--primary: #3b5bdb;--primary-hover: #2f4bc0;--danger: #d64545;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media(prefers-color-scheme:dark){:root{--bg: #14161a;--surface: #1e2126;--text: #eceef1;--muted: #9aa1ac;--border: #2d3138}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}#root{min-height:100vh}.page{max-width:640px;margin:0 auto;padding:24px 16px 64px}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px}h1{font-size:1.5rem}h1,h2,h3{margin-top:0}label{display:block;font-size:.875rem;font-weight:600;margin-bottom:4px;margin-top:16px}label:first-child{margin-top:0}input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],select,textarea{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:1rem;font-family:inherit}button{font-size:1rem;border-radius:8px;border:none;padding:10px 16px;cursor:pointer;background:var(--primary);color:#fff;margin-top:20px}button:hover{background:var(--primary-hover)}button.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}button.danger{background:var(--danger)}button:disabled{opacity:.6;cursor:not-allowed}.error{color:var(--danger);font-size:.875rem;margin-top:8px}.muted{color:var(--muted);font-size:.875rem}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface)}.topbar nav{display:flex;gap:16px}.topbar a{color:var(--text);text-decoration:none;font-weight:500}.topbar a.active{color:var(--primary)}.avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;background:var(--border)}.avatar.large{width:96px;height:96px}.member-list{list-style:none;padding:0;margin:0}.member-list li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border);text-decoration:none;color:var(--text)}.member-list li:last-child{border-bottom:none}.badge{display:inline-block;font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--primary);color:#fff}.invite-code{font-family:monospace;font-size:1.25rem;letter-spacing:2px;padding:8px 12px;background:var(--bg);border-radius:8px;border:1px solid var(--border);display:inline-block}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:40px 16px;z-index:100}.modal-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;width:100%;max-width:480px}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.chip{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:999px;padding:6px 12px;font-size:.875rem;cursor:pointer;margin-top:0}.chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.chip.weekday{padding:6px 10px;min-width:36px;text-align:center}.color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;flex-shrink:0}.checkbox-row{display:flex;align-items:center;gap:8px;padding:6px 0}.checkbox-row input{width:auto}.radio-row{display:flex;align-items:center;gap:8px;margin-top:8px}.radio-row input{width:auto}.field-inline{display:flex;gap:12px}.field-inline>*{flex:1}
