@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", Meiryo, system-ui, -apple-system, sans-serif;--bg-color: #f5f7fb;--bg-elevated: #eef7f4;--surface-color: #ffffff;--surface-hover: #f4f8f7;--surface-soft: #f8fbfb;--text-primary: #14201e;--text-secondary: #5c6f6a;--text-muted: #8ca09a;--accent-primary: #0f766e;--accent-secondary: #2563eb;--accent-warm: #d97706;--accent-gradient: linear-gradient(135deg, #0f766e 0%, #2563eb 100%);--success-color: #16a34a;--warning-color: #d97706;--error-color: #dc2626;--border-subtle: rgba(20, 32, 30, .08);--border-strong: rgba(20, 32, 30, .14);--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 8px;--shadow-sm: 0 1px 2px rgba(20, 32, 30, .05);--shadow-md: 0 10px 28px rgba(20, 32, 30, .07);--shadow-lg: 0 18px 46px rgba(20, 32, 30, .12);--shadow-glow: 0 10px 28px rgba(15, 118, 110, .2);--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-size:16px;background:linear-gradient(135deg,#f8fafc 0%,#f2f8f5 46%,#eef4fb 100%);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;height:100vh;overflow:hidden}#root{height:100vh;min-height:100vh}button{cursor:pointer;border:none;background:none;font-family:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(15,118,110,.18);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.58}::selection{background:rgba(15,118,110,.18)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(92,111,106,.26);border:3px solid transparent;border-radius:999px;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:rgba(92,111,106,.38);border:3px solid transparent;background-clip:padding-box}.glass-panel{background:rgba(255,255,255,.82);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.72);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:border-color .2s,box-shadow .2s,transform .2s}.glass-panel:hover{background:rgba(255,255,255,.94);box-shadow:var(--shadow-lg);border-color:#0f766e33}.tab-transition{animation:tabFadeIn .3s ease-out}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.btn-primary{background:var(--accent-gradient);color:#fff;padding:9px 16px;border-radius:var(--radius-md);font-weight:700;cursor:pointer;transition:transform .18s,box-shadow .18s,filter .18s;box-shadow:var(--shadow-glow)}.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.03);box-shadow:0 15px 34px #0f766e3d}.btn-primary:active{transform:translateY(1px);box-shadow:0 1px 4px #38bdf84d}.btn-secondary:active,.btn-icon:active,.nav-button:active,.tab-button:active{transform:scale(.97);background:rgba(0,0,0,.1)}.interactive-press{transition:transform .1s cubic-bezier(.4,0,.2,1)}.interactive-press:active{transform:scale(.96)}.animate-fade-in{animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.app-container{width:100%;max-width:none;margin:0 auto;display:flex;flex-direction:row;height:100vh;min-height:100vh;position:relative;overflow:hidden}.nav-bar{position:fixed!important;top:0!important;left:auto!important;width:184px;min-width:184px;height:100vh!important;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:14px 10px;gap:12px;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-right:1px solid var(--border-subtle);z-index:999!important;overflow-y:auto!important;box-shadow:12px 0 34px #14201e0f}.main-content{flex:1;height:100vh;overflow:hidden;padding:0 22px 20px;display:flex;flex-direction:column}.brand-lockup{display:flex;align-items:center;gap:10px;padding:6px 8px 14px;border-bottom:1px solid var(--border-subtle)}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-lg);color:#fff;background:var(--accent-gradient);box-shadow:var(--shadow-glow)}.brand-mark svg{width:18px;height:18px}.brand-text{color:var(--text-primary);font-family:"M PLUS Rounded 1c",var(--font-family);font-size:1rem;font-weight:800;line-height:1.1;letter-spacing:0}.brand-subtitle{display:block;margin-top:2px;color:var(--text-muted);font-size:.63rem;font-weight:700;letter-spacing:0}.nav-section{display:flex;flex-direction:column;gap:4px}.customer-cards-mobile{display:none;flex-direction:column;gap:10px}.nav-section-label{padding:6px 10px 2px;font-size:.64rem;font-weight:800;letter-spacing:.08em;color:var(--text-secondary);opacity:.75;-webkit-user-select:none;user-select:none}.nav-button{flex:none;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;width:100%;min-height:38px;font-size:.84rem;padding:9px 10px;gap:10px;cursor:pointer;border-radius:var(--radius-lg);transition:background .16s,color .16s,box-shadow .16s,transform .16s;text-align:left;color:var(--text-secondary);border:1px solid transparent;position:relative}.nav-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;color:currentColor}.nav-icon svg{width:18px;height:18px;stroke-width:2.1}.nav-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-button:hover{background:rgba(15,118,110,.07);color:var(--text-primary)}.nav-button:active{transform:scale(.98);background:rgba(0,0,0,.1)}.nav-button.active{color:var(--accent-primary);background:rgba(15,118,110,.1);border-color:#0f766e26;box-shadow:inset 3px 0 0 var(--accent-primary);font-weight:700}.app-header{position:sticky!important;top:0!important;background:rgba(245,247,251,.82)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);z-index:800!important;padding:12px 0 10px;margin-bottom:8px;border-bottom:1px solid var(--border-subtle)}.app-header-inner{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:0}.page-title-block{display:flex;flex-direction:column;gap:2px;min-width:0}.page-title{color:var(--text-primary);font-size:1.35rem;font-weight:800;line-height:1.2;letter-spacing:0}.page-kicker{color:var(--text-secondary);font-size:.76rem;font-weight:600}.header-actions{display:flex;align-items:center;gap:10px;min-width:0}.account-chip{display:inline-flex;align-items:center;gap:9px;max-width:260px;padding:6px 10px 6px 7px;background:rgba(255,255,255,.72);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.account-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:#fff;background:#14201e;border-radius:var(--radius-md);font-size:.78rem;font-weight:800;overflow:hidden}.account-meta{display:flex;min-width:0;flex-direction:column;line-height:1.15}.account-name{max-width:150px;overflow:hidden;color:var(--text-primary);font-size:.78rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.account-role{color:var(--text-muted);font-size:.67rem;font-weight:700}.logout-button{min-height:34px;padding:0 12px;color:var(--text-secondary);background:rgba(255,255,255,.68);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:.75rem;font-weight:800;transition:background .16s,border-color .16s,color .16s,transform .16s}.logout-button:hover{color:var(--text-primary);background:#ffffff;border-color:var(--border-strong)}.account-chip-button{cursor:pointer;transition:background .16s,border-color .16s}.account-chip-button:hover{background:#ffffff;border-color:var(--border-strong)}.account-caret{color:var(--text-secondary);font-size:.7rem;margin-left:2px}.account-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:190px;padding:6px;background:#ffffff;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 12px 32px #0f172a24;z-index:1500;display:flex;flex-direction:column}.account-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:none;border:none;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;color:var(--text-primary);text-align:left;cursor:pointer}.account-menu-item:hover{background:var(--surface-hover)}.account-menu-item-danger{color:var(--error-color)}.account-menu-divider{height:1px;margin:4px 8px;background:var(--border-subtle)}.desktop-only{display:block}.stats-grid{grid-template-columns:repeat(4,1fr)!important}.section-card{background:var(--surface-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-xl);border:1px solid var(--border-subtle)}.section-card-sm{background:var(--surface-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-lg);border:1px solid var(--border-subtle)}.section-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid rgba(15,118,110,.28);width:fit-content}.section-title{font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.section-icon{font-size:var(--text-xl)}.form-label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-xs)}.form-input{width:100%;padding:var(--space-md);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--text-base);background:var(--surface-color);transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #0f766e26}.form-input:disabled{background:var(--surface-hover);color:var(--text-secondary)}.form-input-lg{padding:var(--space-lg);font-size:var(--text-lg);font-weight:600}.field-mode-legend{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-lg)}.field-mode-legend-compact{margin-bottom:0}.field-mode-legend-item{display:inline-flex;align-items:center}.field-mode-badge{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border-radius:999px;font-size:.72rem;font-weight:800;line-height:1;white-space:nowrap;border:1px solid transparent}.field-mode-badge-input{color:#0f766e;background:rgba(15,118,110,.1);border-color:#0f766e38}.field-mode-badge-readonly{color:var(--text-secondary);background:#f2f5f5;border-color:var(--border-strong)}.input-mode-panel .form-group{position:relative}.input-mode-panel .form-group:focus-within{border-radius:var(--radius-md)}.input-mode-panel .form-input,.input-mode-panel input:not([type=checkbox]):not([type=radio]):not([type=file]),.input-mode-panel select,.input-mode-panel textarea{background:#ffffff!important;border-color:#0f766e6b!important;box-shadow:inset 3px 0 #0f766e6b}.input-mode-panel .form-input:focus,.input-mode-panel input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,.input-mode-panel select:focus,.input-mode-panel textarea:focus{border-color:var(--accent-primary)!important;box-shadow:inset 3px 0 0 var(--accent-primary),0 0 0 3px #0f766e26}.view-mode-panel .form-input,.view-mode-panel input:not([type=checkbox]):not([type=radio]):not([type=file]),.view-mode-panel select,.view-mode-panel textarea,.form-input:disabled,input:disabled:not([type=checkbox]):not([type=radio]):not([type=file]),select:disabled,textarea:disabled{background:#f5f7f7!important;border-color:#5c6f6a38!important;border-style:dashed!important;color:var(--text-secondary)!important;box-shadow:none!important;cursor:default!important}.field-mode-table-cell{border-radius:var(--radius-sm);min-height:30px;display:inline-flex;align-items:center;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-mode-table-cell-editable{color:var(--text-primary);background:rgba(15,118,110,.06);border:1px solid rgba(15,118,110,.12);padding:4px 8px}.field-mode-table-cell-readonly{color:var(--text-secondary);background:#f5f7f7;border:1px dashed rgba(92,111,106,.22);padding:4px 8px}.btn-secondary{background:#ffffff;color:var(--text-secondary);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-weight:700;cursor:pointer;transition:all .2s;border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--surface-hover);color:var(--text-primary);border-color:var(--border-strong)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);background:#ffffff;color:var(--text-secondary);transition:all .2s;border:1px solid var(--border-subtle)}.btn-icon:hover{background:rgba(0,0,0,.1);color:var(--text-primary)}.status-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-xl);font-size:var(--text-sm);font-weight:500}.status-success{background:rgba(22,163,74,.11);color:var(--success-color)}.status-warning{background:rgba(217,119,6,.12);color:var(--warning-color)}.status-error{background:rgba(220,38,38,.1);color:var(--error-color)}.status-info{background:rgba(15,118,110,.1);color:var(--accent-primary)}.markdown-content h1,.markdown-content h2,.markdown-content h3{margin-top:var(--space-lg);margin-bottom:var(--space-sm);color:var(--text-primary);line-height:1.3}.markdown-content h1{font-size:1.5rem;border-bottom:2px solid var(--accent-primary);padding-bottom:4px}.markdown-content h2{font-size:1.25rem;border-left:4px solid var(--accent-primary);padding-left:10px}.markdown-content h3{font-size:1.1rem;font-weight:700}.markdown-content p{margin-bottom:var(--space-md);line-height:1.6}.markdown-content ul,.markdown-content ol{margin-left:var(--space-xl);margin-bottom:var(--space-md)}.markdown-content li{margin-bottom:var(--space-xs)}.markdown-content strong{font-weight:700;color:var(--accent-primary)}.markdown-content blockquote{border-left:4px solid var(--text-muted);padding-left:var(--space-md);color:var(--text-secondary);font-style:italic;margin:var(--space-md) 0}.markdown-content code{background:var(--surface-hover);padding:2px 4px;border-radius:4px;font-family:monospace;font-size:.9em}.chat-bubble.assistant .markdown-content{color:var(--text-primary)}.stat-card{background:var(--surface-color);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-subtle);transition:transform .18s,box-shadow .18s,border-color .18s}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:#0f766e2e}.stat-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs)}.stat-value{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary)}.stat-value-success{color:var(--success-color)}.stat-value-warning{color:var(--warning-color)}.stat-value-error{color:var(--error-color)}.tab-container{display:flex;gap:var(--space-sm);padding:var(--space-sm);background:rgba(20,32,30,.04);border-radius:var(--radius-lg);width:fit-content}.tab-button{padding:var(--space-md) var(--space-xl);font-size:var(--text-base);font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:var(--space-sm)}.tab-button:hover{background:rgba(255,255,255,.5)}.tab-button.active{background:var(--accent-primary);color:#fff;font-weight:600;box-shadow:var(--shadow-glow)}.list-item{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-subtle);transition:background .2s}.list-item:hover{background:var(--surface-hover)}.list-item:last-child{border-bottom:none}.empty-state{text-align:center;padding:var(--space-2xl);color:var(--text-secondary)}.empty-state-icon{font-size:3rem;margin-bottom:var(--space-md);opacity:.5}.divider{height:1px;background:var(--border-subtle);margin:var(--space-lg) 0}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg)}.text-center{text-align:center}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-muted{color:var(--text-secondary)}.text-success{color:var(--success-color)}.text-warning{color:var(--warning-color)}.text-error{color:var(--error-color)}.text-accent{color:var(--accent-primary)}.tooltip-container{position:relative;display:inline-flex;align-items:center;margin-left:6px;cursor:help;color:var(--text-muted);font-size:.9em;vertical-align:middle}.tooltip-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid var(--text-muted);font-size:11px;font-weight:700;transition:all .2s;line-height:1}.tooltip-container:hover .tooltip-icon{color:var(--accent-primary);border-color:var(--accent-primary);background:rgba(14,165,233,.05)}.tooltip-text{visibility:hidden;width:280px;background-color:#334155;color:#fff;text-align:left;border-radius:8px;padding:10px 14px;position:absolute;z-index:1001;bottom:150%;left:50%;transform:translate(-50%);opacity:0;transition:opacity .3s,visibility .3s;font-size:.8rem;line-height:1.5;font-weight:400;box-shadow:var(--shadow-lg);pointer-events:none;white-space:pre-wrap}.tooltip-text:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#334155 transparent transparent transparent}.tooltip-container:hover .tooltip-text{visibility:visible;opacity:1}.app-scroll-area{padding-bottom:4px}.dashboard-shell{gap:0;min-height:0}.global-search{flex-shrink:0}.global-search-input{min-height:46px;border:1px solid var(--border-subtle)!important;border-radius:var(--radius-lg)!important;background:rgba(255,255,255,.92)!important;box-shadow:var(--shadow-sm)!important;color:var(--text-primary)}.global-search-input:focus{border-color:#0f766e6b!important;box-shadow:0 0 0 4px #0f766e1f!important;outline:none}.global-search-results{border:1px solid var(--border-subtle)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg)!important}.global-search-result:hover{background:rgba(15,118,110,.07)!important}.result-field{color:var(--accent-primary);background:rgba(15,118,110,.1)!important;font-weight:700}.dashboard-grid{grid-template-columns:minmax(310px,.9fr) minmax(520px,2fr)!important;gap:18px!important;min-height:0}.dashboard-aside,.dashboard-calendar-panel{min-height:0;padding-bottom:4px}.dashboard-stack{flex-shrink:0}.revenue-card{min-height:198px;border-color:#ffffff47;box-shadow:0 20px 50px #0f766e2e}.quick-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-stat-card{min-height:46px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg)!important;transition:border-color .16s,box-shadow .16s,transform .16s}.quick-stat-card:hover{border-color:#0f766e33;box-shadow:var(--shadow-md)!important;transform:translateY(-1px)}.followup-panel,.trend-panel{border-radius:var(--radius-lg)}.dashboard-calendar-panel>.glass-panel{min-height:100%}table{border-collapse:separate;border-spacing:0}th{color:var(--text-secondary)}td,th{border-color:var(--border-subtle)!important}@media (max-width: 1100px){.dashboard-grid{grid-template-columns:1fr!important;overflow:auto!important}.dashboard-aside,.dashboard-calendar-panel{overflow:visible!important}}@media (max-width: 900px){body{overflow:hidden}.app-container{padding-bottom:68px}.main-content{margin-left:0!important;padding:0 12px 12px}.nav-bar{top:auto!important;bottom:0!important;left:0!important;width:100%!important;min-width:0;height:68px!important;flex-direction:row;align-items:center;padding:8px 10px;border-top:1px solid var(--border-subtle);border-right:0;box-shadow:0 -12px 34px #14201e14;overflow-x:auto!important;overflow-y:hidden!important}.brand-lockup{display:none}.nav-section{width:max-content;flex-direction:row;gap:6px}.nav-section-label{display:none}.customer-table-desktop{display:none!important}.customer-cards-mobile{display:flex!important}.nav-button{width:76px;min-width:76px;min-height:52px;flex-direction:column;justify-content:center;gap:3px;padding:7px 6px;font-size:.68rem;text-align:center}.nav-button.active{box-shadow:inset 0 3px 0 var(--accent-primary)}.nav-icon{width:20px;height:20px}.nav-icon svg{width:17px;height:17px}.app-header{padding:10px 0 8px;margin-bottom:8px}.app-header-inner{align-items:flex-start;flex-direction:column;gap:8px}.page-title{font-size:1.15rem}.page-kicker{display:none}.header-actions{width:100%;justify-content:space-between}.account-chip{max-width:calc(100% - 96px)}.dashboard-grid{gap:12px!important}.quick-stats{grid-template-columns:1fr}.grid-2,.grid-3,.grid-4,.stats-grid{grid-template-columns:1fr!important}}
