:root{--ff-primary:#2c5282;--ff-primary-hover:#1a365d;--ff-primary-light:#4a7ab8;--ff-secondary:#4a5568;--ff-secondary-light:#718096;--ff-accent:#dd6b20;--ff-accent-hover:#c05621;--ff-accent-light:#ed8936;--ff-bg-primary:#ffffff;--ff-bg-secondary:#f7fafc;--ff-bg-tertiary:#edf2f7;--ff-bg-hover:#edf2f7;--ff-text-primary:#2d3748;--ff-text-secondary:#4a5568;--ff-text-tertiary:#9ca3af;--ff-text-muted:#718096;--ff-text-on-primary:#ffffff;--ff-border:#e2e8f0;--ff-border-medium:#cbd5e0;--ff-border-hover:#a0aec0;--ff-error:#e53e3e;--ff-error-light:rgba(229,62,62,0.1);--ff-error-border:#feb2b2;--ff-error-red:#dc2626;--ff-error-bg:#f8d7da;--ff-error-text:#721c24;--ff-success:#38a169;--ff-success-light:rgba(56,161,105,0.1);--ff-success-border:#86efac;--ff-success-bg:#d4edda;--ff-success-text:#155724;--ff-warning:#dd6b20;--ff-warning-light:#fef9e7;--ff-warning-bg:#fff3cd;--ff-warning-text:#856404;--ff-danger:#e53e3e;--ff-info:#2c5282;--ff-info-bg:#d1ecf1;--ff-info-text:#0c5460;--ff-modified-bg:#fef9e7;--ff-modified-text:#92400e;--ff-icon-call:#3b82f6;--ff-icon-meeting:#10b981;--ff-icon-email:#8b5cf6;--ff-icon-email-received:#a855f7;--ff-icon-inquiry:#f97316;--ff-icon-other:#6b7280;--ff-highlight-bg:#f0f7ff;--ff-highlight-border:#dbeafe;--ff-highlight-text:#1e40af;--ff-spinner-track:#f3f3f3;--ff-focus-ring:rgba(74,144,217,0.1);--ff-focus-ring-error:rgba(229,62,62,0.1);--ff-bg-disabled:#f5f5f5;--ff-text-disabled:#718096;--ff-active-bg:#eff6ff;--ff-tag-bg:#e8f4fc;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--header-height:42px;--sidebar-width:240px;--font-sans:"M PLUS 1p","Hiragino Kaku Gothic ProN","Meiryo",-apple-system,BlinkMacSystemFont,sans-serif;--letter-spacing-body:0.02em;--letter-spacing-heading:0.05em;--ff-font-xs:0.75rem;--ff-font-sm:0.8125rem;--ff-font-base:0.875rem;--ff-font-md:1rem;--ff-font-lg:1.125rem;--ff-font-xl:1.25rem;--ff-font-2xl:1.5rem;--shadow-sm:0 1px 2px rgba(44,82,130,0.05);--shadow-md:0 4px 6px rgba(44,82,130,0.08);--shadow-lg:0 25px 50px -12px rgba(44,82,130,0.15);--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--z-table-header:10;--z-dropdown:50;--z-nav:100;--z-overlay:1000;--z-confirm:2000;--z-toast:9999;--touch-target-min:44px;--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-top:env(safe-area-inset-top,0px)}@media (prefers-color-scheme:dark){:root{--ff-primary:#4a90d9;--ff-primary-hover:#5ba3ec;--ff-primary-light:#6db3f5;--ff-secondary:#a0aec0;--ff-secondary-light:#cbd5e0;--ff-accent:#ed8936;--ff-accent-hover:#f6ad55;--ff-accent-light:#fbd38d;--ff-bg-primary:#1a202c;--ff-bg-secondary:#2d3748;--ff-bg-tertiary:#4a5568;--ff-bg-hover:#4a5568;--ff-text-primary:#e2e8f0;--ff-text-secondary:#a0aec0;--ff-text-tertiary:#6b7280;--ff-text-muted:#718096;--ff-text-on-primary:#ffffff;--ff-border:#4a5568;--ff-border-medium:#718096;--ff-border-hover:#a0aec0;--ff-error:#fc8181;--ff-error-light:rgba(252,129,129,0.15);--ff-error-border:#fc8181;--ff-error-red:#f87171;--ff-error-bg:rgba(252,129,129,0.15);--ff-error-text:#fca5a5;--ff-success:#68d391;--ff-success-light:rgba(104,211,145,0.15);--ff-success-border:#68d391;--ff-success-bg:rgba(104,211,145,0.15);--ff-success-text:#86efac;--ff-warning:#f6ad55;--ff-warning-light:rgba(246,173,85,0.15);--ff-warning-bg:rgba(246,173,85,0.15);--ff-warning-text:#fbd38d;--ff-danger:#fc8181;--ff-info:#63b3ed;--ff-info-bg:rgba(99,179,237,0.15);--ff-info-text:#90cdf4;--ff-modified-bg:rgba(246,173,85,0.15);--ff-modified-text:#fbd38d;--ff-icon-call:#63b3ed;--ff-icon-meeting:#34d399;--ff-icon-email:#c084fc;--ff-icon-email-received:#c084fc;--ff-icon-inquiry:#fb923c;--ff-icon-other:#9ca3af;--ff-active-bg:#1e3a5f;--ff-tag-bg:#2a4a6b;--ff-highlight-bg:#1e3a5f;--ff-highlight-border:#2d4a6f;--ff-highlight-text:#93c5fd;--ff-spinner-track:#4a5568;--ff-focus-ring:rgba(74,144,217,0.25);--ff-focus-ring-error:rgba(252,129,129,0.25);--ff-bg-disabled:#2d3748;--ff-text-disabled:#718096;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 6px rgba(0,0,0,0.4);--shadow-lg:0 25px 50px -12px rgba(0,0,0,0.5)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}