*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #fafaf7;--color-surface: #ffffff;--color-border: #e5e7eb;--color-text: #1a1d23;--color-text-secondary: #6b7280;--color-accent: #1a3a5f;--color-accent-light: #2d5a9e;--color-danger: #dc2626;--color-success: #16a34a;--color-warn: #d97706;--color-sidebar-bg: #1a1d29;--color-sidebar-text: rgba(255, 255, 255, .78);--color-sidebar-text-dim: rgba(255, 255, 255, .5);--color-sidebar-text-strong: #ffffff;--color-sidebar-hover: rgba(255, 255, 255, .07);--color-sidebar-active: rgba(255, 255, 255, .18);--color-sidebar-border: rgba(255, 255, 255, .08);--sidebar-width: 220px;--radius: 6px;--shadow: 0 1px 3px rgba(0, 0, 0, .06)}html,body,#root{height:100%}body{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.6;color:var(--color-text);background:var(--color-bg)}a{color:var(--color-accent-light);text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:14px}.app-shell{display:flex;height:100vh;overflow:hidden}.main-area{flex:1;min-width:0;overflow:hidden}.center-area{height:100%;display:flex;flex-direction:column;overflow:hidden}.center-scroll{flex:1;overflow-y:auto}.page{padding:20px 24px 40px;max-width:960px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.page-header h1{font-size:18px;font-weight:700;margin-top:4px}.breadcrumb{font-size:12px;color:var(--color-text-secondary)}.header-actions{display:flex;gap:8px}.sidebar{width:var(--sidebar-width);flex-shrink:0;background:var(--color-sidebar-bg);color:var(--color-sidebar-text);display:flex;flex-direction:column;border-right:1px solid var(--color-sidebar-border)}.sidebar-header{display:flex;align-items:center;gap:10px;padding:18px 14px;border-bottom:1px solid var(--color-sidebar-border)}.sidebar-logo{width:34px;height:34px;background:linear-gradient(135deg,#2d5a9e,#1a3a5f);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px}.sidebar-title{font-size:14px;font-weight:700;color:var(--color-sidebar-text-strong);font-family:"Noto Serif JP",serif}.sidebar-subtitle{font-size:11px;color:var(--color-sidebar-text-dim)}.sidebar-nav{padding:12px 8px;display:flex;flex-direction:column;gap:4px}.nav-link{display:block;padding:8px 12px;border-radius:var(--radius);color:var(--color-sidebar-text);font-size:13px}.nav-link:hover{background:var(--color-sidebar-hover);text-decoration:none}.nav-link.active{background:var(--color-sidebar-active);color:var(--color-sidebar-text-strong)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:13px;text-decoration:none}.btn:hover{background:#f3f4f6}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-light)}.btn:disabled{opacity:.5;cursor:not-allowed}.form-input{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius);background:#fff}label{display:block;margin-bottom:12px;font-size:12px;font-weight:600;color:var(--color-text-secondary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-card{margin-bottom:16px}.form-actions{display:flex;gap:8px;margin-top:8px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.card-list{display:flex;flex-direction:column;gap:10px}.card-link{display:block;color:inherit;text-decoration:none}.card-link:hover{border-color:var(--color-accent-light)}.card-title{font-weight:700;font-size:15px}.card-meta,.meta-text{font-size:12px;color:var(--color-text-secondary);margin-top:4px}.data-table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.data-table th,.data-table td{padding:10px 12px;border-bottom:1px solid var(--color-border);text-align:left;font-size:13px}.data-table th{background:#f9fafb;font-size:11px;font-weight:700;color:var(--color-text-secondary)}.truncate{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.badge-hot_lead{background:#fef2f2;color:#b91c1c}.badge-light_contact{background:#f3f4f6;color:#4b5563}.badge-info_gathering{background:#eff6ff;color:#1d4ed8}.badge-partner_intro{background:#f0fdf4;color:#15803d}.badge-sent{background:#dcfce7;color:#15803d}.badge-failed{background:#fef2f2;color:#b91c1c}.badge-pending{background:#f3f4f6;color:#6b7280}.toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:16px}.detail-grid{display:flex;flex-direction:column;gap:16px}.detail-grid h2{font-size:14px;margin-bottom:12px}.card-image{max-width:100%;max-height:240px;object-fit:contain;margin-bottom:12px;border:1px solid var(--color-border);border-radius:var(--radius)}.preview-card{margin-bottom:12px}.preview-header{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.preview-subject{font-size:12px;color:var(--color-text-secondary);margin-bottom:8px}.preview-body{white-space:pre-wrap;font-size:13px;background:#f9fafb;padding:12px;border-radius:var(--radius);border:1px solid var(--color-border)}.result-list{list-style:none;font-size:13px}.result-list li{padding:6px 0;border-bottom:1px solid var(--color-border)}.result-sent{color:var(--color-success)}.result-failed{color:var(--color-danger)}.result-skipped{color:var(--color-warn)}.error-msg{background:#fef2f2;color:#b91c1c;padding:10px 12px;border-radius:var(--radius);margin-bottom:12px;font-size:13px}.success-msg{background:#f0fdf4;color:#15803d;padding:10px 12px;border-radius:var(--radius);margin-bottom:12px;font-size:13px}.warn-msg{background:#fffbeb;color:#92400e;padding:10px 12px;border-radius:var(--radius);margin-bottom:8px;font-size:13px}.loading,.empty-state{padding:40px 0;text-align:center;color:var(--color-text-secondary)}@media(max-width:720px){.form-row{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}}
