@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;700&display=swap";:root{--color-primary: #1565D8;--color-primary-hover: #0D4FB8;--color-primary-dark: #0A3F94;--color-primary-soft: #E8F1FE;--color-primary-soft-2: #C7DDFB;--color-accent: #F59E0B;--color-accent-soft: #FEF3C7;--gradient-primary: linear-gradient(135deg, #1565D8 0%, #0A3F94 100%);--gradient-brand: linear-gradient(135deg, #1565D8 0%, #6366F1 100%);--gradient-card: linear-gradient(135deg, #1565D8 0%, #0A3F94 60%, #1E3A8A 100%);--gradient-soft: linear-gradient(135deg, #E8F1FE 0%, #F0F9FF 100%);--color-bg: #F4F6FB;--color-bg-elevated: #FAFBFD;--color-surface: #FFFFFF;--color-surface-alt: #FBFCFD;--color-sidebar-bg: #FFFFFF;--color-sidebar-active:#F1F6FE;--color-topbar-bg: #FFFFFF;--color-overlay: rgba(15, 23, 42, .5);--color-border: #E5E8EE;--color-border-strong: #CFD4DC;--color-border-table: #E8EBF0;--color-border-soft: #F0F2F6;--color-text: #1F2937;--color-text-strong: #0F172A;--color-text-muted: #5F6B7A;--color-text-soft: #94A0AE;--color-text-on-primary:#FFFFFF;--color-success: #059669;--color-success-bg: #D1FAE5;--color-warning: #D97706;--color-warning-bg: #FEF3C7;--color-danger: #DC2626;--color-danger-bg: #FEE2E2;--color-info: #1565D8;--color-info-bg: #E8F1FE;--color-gray: #5F6B7A;--color-gray-bg: #F3F4F6;--color-dark: #374151;--color-dark-bg: #E5E7EB;--font-family: "Inter", "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Consolas, monospace;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-md: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 22px;--font-size-3xl: 28px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 12px rgba(15, 23, 42, .06), 0 2px 4px rgba(15, 23, 42, .04);--shadow-lg: 0 12px 32px rgba(15, 23, 42, .08), 0 4px 12px rgba(15, 23, 42, .05);--shadow-xl: 0 24px 48px rgba(15, 23, 42, .12), 0 8px 16px rgba(15, 23, 42, .06);--shadow-focus: 0 0 0 3px rgba(21, 101, 216, .18);--shadow-brand: 0 8px 24px rgba(21, 101, 216, .25);--sidebar-width: 256px;--topbar-height: 60px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .22s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"cv02","cv03","cv04","cv11"}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover);text-decoration:underline}button{font-family:inherit;cursor:pointer;outline:none}button:focus-visible{box-shadow:var(--shadow-focus)}input,select,textarea{font-family:inherit;font-size:var(--font-size-base);outline:none}input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:var(--shadow-focus);border-color:var(--color-primary)}table{border-collapse:collapse;width:100%}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#94a3b8;background-clip:padding-box;border:2px solid transparent}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.grow{flex:1}.text-muted{color:var(--color-text-muted)}.text-soft{color:var(--color-text-soft)}.text-sm{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-right{text-align:right}.text-center{text-align:center}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.p-4{padding:16px}.p-6{padding:24px}.w-full{width:100%}.page{padding:24px 28px 40px;max-width:100%}.page-title{font-size:var(--font-size-2xl);font-weight:700;margin:0 0 4px;color:var(--color-text-strong);letter-spacing:-.01em}.page-subtitle{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:24px;line-height:1.5}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;gap:16px}.page-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.toolbar{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:14px;box-shadow:var(--shadow-xs)}.toolbar input[type=search],.toolbar input[type=text],.toolbar select{height:34px;padding:0 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;font-size:var(--font-size-md);color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.toolbar input:focus,.toolbar select:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat-card{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:18px 20px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-xs);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary-soft),var(--color-primary),var(--color-primary-soft));opacity:0;transition:opacity var(--transition-base)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary-soft-2)}.stat-card:hover:before{opacity:1}.stat-card .label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;font-weight:600;letter-spacing:.4px}.stat-card .value{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-strong);letter-spacing:-.01em;line-height:1.2}.stat-card .delta{font-size:var(--font-size-sm);color:var(--color-success);font-weight:500}.stat-card.primary{background:var(--gradient-card);border-color:transparent;color:#fff;box-shadow:var(--shadow-brand)}.stat-card.primary:before{display:none}.stat-card.primary .label,.stat-card.primary .delta{color:#ffffffd9}.stat-card.primary .value{color:#fff}.stat-card.primary:hover{box-shadow:0 12px 32px #1565d859;border-color:transparent}.misa-table{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xs)}.misa-table table{width:100%}.misa-table th,.misa-table td{border-right:1px solid var(--color-border-soft);border-bottom:1px solid var(--color-border-soft);padding:10px 14px;text-align:left;font-size:var(--font-size-md);vertical-align:middle}.misa-table th:last-child,.misa-table td:last-child{border-right:none}.misa-table th{background:linear-gradient(180deg,#fbfcfe,#f5f7fa);font-weight:600;color:var(--color-text-strong);white-space:nowrap;font-size:var(--font-size-sm);text-transform:none;letter-spacing:0;position:sticky;top:0;z-index:1;border-bottom:1px solid var(--color-border)}.misa-table tbody tr{transition:background var(--transition-fast)}.misa-table tbody tr:nth-child(2n) td{background:#fcfcfe}.misa-table tbody tr:hover td{background:var(--color-primary-soft);cursor:pointer}.misa-table tr:last-child td{border-bottom:none}.misa-table td.num,.misa-table th.num{text-align:right;font-variant-numeric:tabular-nums}.misa-table td.center,.misa-table th.center{text-align:center}.misa-table tr.subtotal td{background:#eef3fa!important;font-weight:600}.misa-table tr.total td{background:linear-gradient(90deg,var(--color-primary-soft),#DBE9FC)!important;font-weight:700;color:var(--color-primary-dark)}.misa-table tr.section td{background:#e8eef7!important;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 20px}.form-grid.full{grid-template-columns:1fr}.form-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:20px 24px;margin-bottom:16px;box-shadow:var(--shadow-xs)}.form-section h3{margin:0 0 16px;font-size:var(--font-size-lg);color:var(--color-primary);font-weight:600;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.form-input{width:100%;height:36px;padding:0 12px;font-size:13px;color:var(--color-text);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:hover{border-color:var(--color-border-strong)}.form-input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.divider{height:1px;background:var(--color-border);margin:16px 0}.empty-cell{color:var(--color-text-soft)}.cell-warning{background:#fee2e2!important;color:var(--color-danger);font-weight:600}.cell-ok{background:#d1fae5!important}.bg-soft{background:var(--color-primary-soft)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page>*{animation:fadeIn .28s cubic-bezier(.4,0,.2,1) backwards}.page>*:nth-child(1){animation-delay:0ms}.page>*:nth-child(2){animation-delay:40ms}.page>*:nth-child(3){animation-delay:80ms}.page>*:nth-child(4){animation-delay:.12s}.page>*:nth-child(5){animation-delay:.16s}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse-dot{animation:pulse 2s ease-in-out infinite}
