:root{--text:#333;--text-h:#111;--bg:#fafafa;--border:#ddd;--accent:#2a6f97;--accent-hover:#1f5674;--error:#c0392b;color:var(--text);background:var(--bg);font:16px/1.6 system-ui,Segoe UI,Hiragino Sans,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{margin:0}h1,h2{color:var(--text-h);font-weight:700}#root{min-height:100svh}.page{max-width:720px;margin:0 auto;padding:32px 20px 80px}.page.wide{max-width:1000px}.field{margin-bottom:20px}.field label{margin-bottom:6px;font-weight:600;display:block}.field input[type=text],.field input[type=email],.field input[type=password],.field select,.field textarea{border:1px solid var(--border);width:100%;font:inherit;border-radius:4px;padding:8px 10px}.field textarea{resize:vertical;min-height:100px}.radio-group label,.checkbox-row label{align-items:center;gap:8px;margin-bottom:8px;font-weight:400;display:flex}.required{color:var(--error);margin-left:4px;font-size:.85em}.actions{gap:12px;margin-top:24px;display:flex}button,.button{background:var(--accent);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:4px;padding:10px 20px;font-weight:600;text-decoration:none;display:inline-block}button:hover,.button:hover{background:var(--accent-hover)}button.secondary{background:#888}button.secondary:hover{background:#666}button.danger{background:var(--error)}button:disabled{cursor:not-allowed;background:#aaa}.error-message{color:var(--error);margin:12px 0}table{border-collapse:collapse;width:100%}th,td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 10px}th{background:#f0f0f0}.confirm-table th{background:#f5f5f5;width:30%}.top-nav{align-items:center;gap:16px;margin-bottom:24px;display:flex}.top-nav a{color:var(--accent)}.top-nav a.button{color:#fff}
