@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:#fff;--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:#14201e14;--border-strong:#14201e24;--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 #14201e0d;--shadow-md:0 10px 28px #14201e12;--shadow-lg:0 18px 46px #14201e1f;--shadow-glow:0 10px 28px #0f766e33;--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);color:var(--text-primary);-webkit-font-smoothing:antialiased;background:linear-gradient(135deg,#f8fafc 0%,#f2f8f5 46%,#eef4fb 100%);height:100vh;font-size:16px;line-height:1.5;overflow:hidden}#root{height:100vh;min-height:100vh}.fullpage-scroll{-webkit-overflow-scrolling:touch;height:100vh;overflow:hidden auto}.fullpage-scroll>*{margin:auto}.admin-scroll{-webkit-overflow-scrolling:touch;height:100vh;overflow:hidden auto}button{cursor:pointer;background:0 0;border:none;font-family:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #0f766e2e}button:disabled{cursor:not-allowed;opacity:.58}::selection{background:#0f766e2e}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#5c6f6a42 padding-box padding-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#5c6f6a61 padding-box padding-box;border:3px solid #0000}.glass-panel{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#ffffffd1;border:1px solid #ffffffb8;transition:border-color .2s,box-shadow .2s,transform .2s}.glass-panel:hover{box-shadow:var(--shadow-lg);background:#fffffff0;border-color:#0f766e33}.tab-transition{animation:.3s ease-out tabFadeIn}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.btn-primary{background:var(--accent-gradient);color:#fff;border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-glow);padding:9px 16px;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s}.btn-primary:hover{filter:brightness(1.03);transform:translateY(-2px);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{background:#0000001a;transform:scale(.97)}.interactive-press{transition:transform .1s cubic-bezier(.4,0,.2,1)}.interactive-press:active{transform:scale(.96)}.animate-fade-in{animation:.5s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.startup-progress{background:var(--border-strong,#14201e24);border-radius:999px;width:100%;height:6px;overflow:hidden}.startup-progress-bar{background:var(--accent-primary,#0f766e);border-radius:999px;height:100%;transition:width .45s}.startup-progress-bar.is-indeterminate{width:40%;animation:1.4s ease-in-out infinite startupProgressSlide}@keyframes startupProgressSlide{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion:reduce){.startup-progress-bar.is-indeterminate{opacity:.5;width:100%;animation:none}}.app-container{flex-direction:row;width:100%;max-width:none;height:100vh;min-height:100vh;margin:0 auto;display:flex;position:relative;overflow:hidden}.nav-bar{-webkit-backdrop-filter:blur(18px);border-right:1px solid var(--border-subtle);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:12px;width:184px;min-width:184px;padding:14px 10px;display:flex;box-shadow:12px 0 34px #14201e0f;z-index:999!important;background:#fffffff0!important;height:100vh!important;position:fixed!important;top:0!important;left:auto!important;overflow-y:auto!important}.main-content{flex-direction:column;flex:1;height:100vh;padding:0 22px 20px;display:flex;overflow:hidden}@media (width>=901px){.settings-menu{align-self:flex-start;position:sticky;top:0}}.brand-lockup{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:6px 8px 14px;display:flex}.brand-mark{color:#ff8a00;width:34px;height:34px;box-shadow:none;background:0 0;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.brand-mark svg{stroke-width:2.4px;width:26px;height:26px}.brand-text{color:#0f4c81;font-family:"M PLUS Rounded 1c", var(--font-family);letter-spacing:1px;font-size:1.25rem;font-weight:800;line-height:1.1}.brand-subtitle{color:var(--text-muted);letter-spacing:0;margin-top:2px;font-size:.63rem;font-weight:700;display:block}.nav-section{flex-direction:column;gap:4px;display:flex}.customer-cards-mobile{flex-direction:column;gap:10px;display:none}.nav-section-label{letter-spacing:.08em;color:var(--text-secondary);opacity:.75;-webkit-user-select:none;user-select:none;padding:6px 10px 2px;font-size:.64rem;font-weight:800}.nav-button{cursor:pointer;border-radius:var(--radius-lg);text-align:left;width:100%;min-height:38px;color:var(--text-secondary);border:1px solid #0000;flex-direction:row;flex:none;justify-content:flex-start;align-items:center;gap:10px;padding:9px 10px;font-size:.84rem;transition:background .16s,color .16s,box-shadow .16s,transform .16s;display:flex;position:relative}.nav-icon{color:currentColor;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex;position:relative}.nav-badge{color:#fff;text-align:center;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--surface-color);pointer-events:none;z-index:1;background:#ef4444;border-radius:999px;padding:0 4px;font-size:.6rem;font-weight:800;line-height:16px;position:absolute;top:-5px;right:-8px}.nav-icon svg{stroke-width:2.1px;width:18px;height:18px}.nav-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav-button:hover{color:var(--text-primary);background:#0f766e12}.nav-button:active{background:#0000001a;transform:scale(.98)}.nav-button.active{color:var(--accent-primary);box-shadow:inset 3px 0 0 var(--accent-primary);background:#0f766e1a;border-color:#0f766e26;font-weight:700}.app-header{-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);margin-bottom:8px;padding:12px 0 10px;z-index:800!important;background:#f5f7fbd1!important;position:sticky!important;top:0!important}.app-header-inner{justify-content:space-between;align-items:center;gap:18px;padding:0;display:flex}.page-title-block{flex-direction:column;gap:2px;min-width:0;display:flex}.page-title{color:var(--text-primary);letter-spacing:0;font-size:1.35rem;font-weight:800;line-height:1.2}.page-kicker{color:var(--text-secondary);font-size:.76rem;font-weight:600}.header-actions{align-items:center;gap:10px;min-width:0;display:flex}.header-search-slot{flex:auto;min-width:0;max-width:620px;position:relative}.account-chip{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);max-width:260px;box-shadow:var(--shadow-sm);background:#ffffffb8;align-items:center;gap:9px;padding:6px 10px 6px 7px;display:inline-flex}.account-avatar{color:#fff;border-radius:var(--radius-md);background:#14201e;justify-content:center;align-items:center;width:28px;height:28px;font-size:.78rem;font-weight:800;display:inline-flex;overflow:hidden}.account-meta{flex-direction:column;min-width:0;line-height:1.15;display:flex}.account-name{max-width:150px;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:800;overflow:hidden}.account-role{color:var(--text-muted);font-size:.67rem;font-weight:700}.logout-button{min-height:34px;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#ffffffad;padding:0 12px;font-size:.75rem;font-weight:800;transition:background .16s,border-color .16s,color .16s,transform .16s}.logout-button:hover{color:var(--text-primary);border-color:var(--border-strong);background:#fff}.account-chip-button{cursor:pointer;transition:background .16s,border-color .16s}.account-chip-button:hover{border-color:var(--border-strong);background:#fff}.account-caret{color:var(--text-secondary);margin-left:2px;font-size:.7rem}.account-menu{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);z-index:1500;background:#fff;flex-direction:column;min-width:190px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #0f172a24}.account-menu-item{border-radius:var(--radius-md);width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:10px 12px;font-size:.85rem;font-weight:600;display:flex}.account-menu-item:hover{background:var(--surface-hover)}.account-menu-item-danger{color:var(--error-color)}.account-menu-divider{background:var(--border-subtle);height:1px;margin:4px 8px}.desktop-only{display:block}.brand-lockup.desktop-only{display:flex}.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{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid #0f766e47;width:fit-content;display:flex}.section-title{font-size:var(--text-lg);color:var(--text-primary);font-weight:600}.section-icon{font-size:var(--text-xl)}.form-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs);font-weight:500;display:block}.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{border-color:var(--accent-primary);outline:none;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{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.field-mode-legend-compact{margin-bottom:0}.field-mode-legend-item{align-items:center;display:inline-flex}.field-mode-badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;min-height:22px;padding:3px 8px;font-size:.72rem;font-weight:800;line-height:1;display:inline-flex}.field-mode-badge-input{color:#0f766e;background:#0f766e1a;border-color:#0f766e38}.field-mode-badge-readonly{color:var(--text-secondary);border-color:var(--border-strong);background:#f2f5f5}.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{box-shadow:inset 3px 0 #0f766e6b;background:#fff!important;border-color:#0f766e6b!important}.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{box-shadow:inset 3px 0 0 var(--accent-primary), 0 0 0 3px #0f766e26;border-color:var(--accent-primary)!important}.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{color:var(--text-secondary)!important;box-shadow:none!important;cursor:default!important;background:#f5f7f7!important;border-style:dashed!important;border-color:#5c6f6a38!important}.field-mode-table-cell{border-radius:var(--radius-sm);text-overflow:ellipsis;white-space:nowrap;align-items:center;min-width:0;max-width:100%;min-height:30px;display:inline-flex;overflow:hidden}.field-mode-table-cell-editable{color:var(--text-primary);background:#0f766e0f;border:1px solid #0f766e1f;padding:4px 8px}.field-mode-table-cell-readonly{color:var(--text-secondary);background:#f5f7f7;border:1px dashed #5c6f6a38;padding:4px 8px}.btn-secondary{color:var(--text-secondary);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);cursor:pointer;border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);background:#fff;font-weight:700;transition:all .2s}.btn-secondary:hover{background:var(--surface-hover);color:var(--text-primary);border-color:var(--border-strong)}.btn-icon{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-secondary);border:1px solid var(--border-subtle);background:#fff;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.btn-icon:hover{color:var(--text-primary);background:#0000001a}.status-badge{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;display:inline-flex}.status-success{color:var(--success-color);background:#16a34a1c}.status-warning{color:var(--warning-color);background:#d977061f}.status-error{color:var(--error-color);background:#dc26261a}.status-info{color:var(--accent-primary);background:#0f766e1a}.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{border-bottom:2px solid var(--accent-primary);padding-bottom:4px;font-size:1.5rem}.markdown-content h2{border-left:4px solid var(--accent-primary);padding-left:10px;font-size:1.25rem}.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{color:var(--accent-primary);font-weight:700}.markdown-content blockquote{border-left:4px solid var(--text-muted);padding-left:var(--space-md);color:var(--text-secondary);margin:var(--space-md) 0;font-style:italic}.markdown-content code{background:var(--surface-hover);border-radius:4px;padding:2px 4px;font-family:monospace;font-size:.9em}.chat-bubble.assistant .markdown-content{color:var(--text-primary)}.markdown-content table{border-collapse:collapse;width:100%;margin:var(--space-md) 0;font-size:.85rem;display:block;overflow-x:auto}.markdown-content th,.markdown-content td{text-align:left;vertical-align:top;white-space:nowrap;border:1px solid #cbd5e1;padding:6px 10px}.markdown-content td:last-child{white-space:normal;min-width:160px}.markdown-content th{background:#f1f5f9;font-weight:700}.markdown-content tr:nth-child(2n) td{background:#f8fafc}.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{box-shadow:var(--shadow-md);border-color:#0f766e2e;transform:translateY(-2px)}.stat-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs)}.stat-value{font-size:var(--text-2xl);color:var(--text-primary);font-weight:700}.stat-value-success{color:var(--success-color)}.stat-value-warning{color:var(--warning-color)}.stat-value-error{color:var(--error-color)}.tab-container{gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-lg);background:#14201e0a;width:fit-content;display:flex}.tab-button{padding:var(--space-md) var(--space-xl);font-size:var(--text-base);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:var(--space-sm);background:0 0;border:none;font-weight:500;transition:all .2s;display:flex}.tab-button:hover{background:#ffffff80}.tab-button.active{background:var(--accent-primary);color:#fff;box-shadow:var(--shadow-glow);font-weight:600}.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}.sales-data-table{table-layout:fixed}.sales-data-table .cell-ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.empty-state{text-align:center;padding:var(--space-2xl);color:var(--text-secondary)}.empty-state-icon{margin-bottom:var(--space-md);opacity:.5;font-size:3rem}.divider{background:var(--border-subtle);height:1px;margin:var(--space-lg) 0}.grid-2{gap:var(--space-lg);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.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{cursor:help;color:var(--text-muted);vertical-align:middle;align-items:center;margin-left:6px;font-size:.9em;display:inline-flex;position:relative}.tooltip-icon{border:1px solid var(--text-muted);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:11px;font-weight:700;line-height:1;transition:all .2s;display:inline-flex}.tooltip-container:hover .tooltip-icon{color:var(--accent-primary);border-color:var(--accent-primary);background:#0ea5e90d}.tooltip-text{visibility:hidden;color:#fff;text-align:left;z-index:1001;opacity:0;width:min(280px,100vw - 32px);box-shadow:var(--shadow-lg);pointer-events:none;white-space:pre-wrap;background-color:#334155;border-radius:8px;padding:10px 14px;font-size:.8rem;font-weight:400;line-height:1.5;transition:opacity .3s,visibility .3s;position:absolute;bottom:150%;left:50%;transform:translate(-50%)}.tooltip-text:after{content:"";border:5px solid #0000;border-top-color:#334155;margin-left:-5px;position:absolute;top:100%;left:50%}.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;color:var(--text-primary);border:1px solid var(--border-subtle)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-sm)!important;background:#ffffffeb!important}.global-search-input:focus{outline:none;border-color:#0f766e6b!important;box-shadow:0 0 0 4px #0f766e1f!important}.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:#0f766e12!important}.result-field{color:var(--accent-primary);font-weight:700;background:#0f766e1a!important}.dashboard-grid{min-height:0;grid-template-columns:minmax(290px,1fr) minmax(360px,1.35fr) minmax(250px,.85fr)!important;gap:18px!important}.dashboard-aside,.dashboard-calendar-panel,.dashboard-followup-col{min-height:0;padding-bottom:4px}.dashboard-stack{flex-shrink:0}.revenue-card{border-color:#ffffff47;min-height:198px;box-shadow:0 20px 50px #0f766e2e}.quick-stats{grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}.quick-stat-card{border:1px solid var(--border-subtle);min-height:46px;transition:border-color .16s,box-shadow .16s,transform .16s;border-radius:var(--radius-lg)!important}.quick-stat-card:hover{border-color:#0f766e33;transform:translateY(-1px);box-shadow:var(--shadow-md)!important}.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}.history-add-toggle,.revenue-compact,.calendar-summary-total-label,.calendar-cell-mobile-mark,.calendar-day-detail{display:none}.elapsed-sort-bar{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.elapsed-sort-label{color:var(--text-secondary);font-size:.8rem}.elapsed-sort-bar button{background:var(--surface-hover);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:7px 14px;font-size:.82rem}.elapsed-sort-bar button.active{background:var(--accent-primary);color:#fff;font-weight:700}@media (width<=1100px){.dashboard-grid{flex:none!important;height:auto!important;display:block!important;overflow:visible!important}.dashboard-grid>*{min-width:0;margin-bottom:12px;height:auto!important;overflow:visible!important}.dashboard-calendar-panel>.glass-panel{min-height:0!important}}@media (width<=900px){body{overflow:hidden}.app-container{padding-bottom:58px}.main-content{padding:0 12px 12px;margin-left:0!important}.nav-bar{border-top:1px solid var(--border-subtle);border-right:0;flex-direction:row;align-items:center;min-width:0;padding:4px 10px;box-shadow:0 -12px 34px #14201e14;width:100%!important;height:calc(58px + env(safe-area-inset-bottom,0px))!important;top:auto!important;bottom:0!important;left:0!important;overflow:auto hidden!important}.brand-lockup{display:none}.nav-section{flex-direction:row;gap:6px;width:max-content}.nav-section-label{display:none}.customer-table-desktop{display:none!important}.customer-cards-mobile{display:flex!important}.nav-button{text-align:center;flex-direction:column;justify-content:center;gap:3px;width:76px;min-width:76px;min-height:52px;padding:7px 6px;font-size:.68rem}.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{margin-bottom:4px;padding:5px 0}.app-header-inner{flex-flow:wrap;align-items:center;gap:8px}.header-search-slot{flex:1 0 100%;order:3;max-width:none}.page-title{font-size:1.05rem}.page-kicker{display:none}.header-actions{justify-content:flex-end;width:auto;margin-left:auto}.account-chip{justify-content:center;width:36px;min-width:36px;max-width:36px;height:36px;padding:4px}.account-meta,.account-caret{display:none}.account-avatar{flex-shrink:0}.dashboard-grid{gap:12px!important}.quick-stats{grid-template-columns:1fr}.grid-2,.grid-3,.grid-4,.stats-grid{grid-template-columns:1fr!important}.settings-layout{flex-direction:column!important;gap:12px!important}.settings-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;padding:12px;min-width:0!important;display:grid!important}.settings-menu>.form-label{grid-column:1/-1;margin-bottom:0!important}.settings-menu .tab-button{text-align:center;overflow-wrap:anywhere;min-width:0;padding:10px 6px;justify-content:center!important;width:100%!important;margin:0!important}.settings-content{width:100%}.settings-content [style*=grid-template-columns]{grid-template-columns:1fr!important}.settings-content [style*=grid-column]{grid-column:1/-1!important}.recent-activity-screen{padding:12px 0!important}.activity-card{grid-template-columns:1fr!important;gap:10px!important;padding:14px!important;display:grid!important}.activity-date,.activity-meta{align-items:flex-start!important;min-width:0!important}.activity-content,.activity-content *{word-break:normal;overflow-wrap:anywhere}.sales-screen{min-width:0}.sales-table-scroll{width:100%;overflow-x:visible!important}.sales-data-table{display:block;min-width:0!important}.sales-data-table thead{display:none}.sales-data-table tbody{display:block}.sales-data-table tr{background:var(--surface-color);box-shadow:var(--shadow-sm);border:1px solid #00000014;border-radius:10px;grid-template-columns:26px 1fr;align-items:center;gap:2px 6px;margin-bottom:10px;padding:10px 12px;display:grid}.sales-data-table td{white-space:normal;overflow-wrap:anywhere;grid-column:2;font-size:.85rem;display:block;padding:2px 0!important}.sales-data-table td.cell-ellipsis{white-space:normal;text-overflow:clip;overflow:visible}.sales-data-table td:first-child{grid-area:1/1}.sales-data-table td.cell-name{order:0;grid-row:auto;font-size:1rem;font-weight:700;padding-bottom:6px!important}.sales-data-table td[data-label=最終作業日]{order:1}.sales-data-table td[data-label=経過]{order:2}.sales-data-table td[data-label=電話]{order:3}.sales-data-table td[data-label=住所]{order:4}.sales-data-table td[data-label]{grid-template-columns:5.4em 1fr;align-items:baseline;column-gap:8px;display:grid;text-align:left!important;padding:3px 0!important}.sales-data-table td[data-label]:before{content:attr(data-label);color:var(--text-muted);font-size:.7rem;font-weight:400}.sales-data-table td.cell-actions{order:5;grid-column:1/-1;text-align:left!important;padding-top:10px!important}.sales-data-table td.cell-actions>div{flex-wrap:wrap;justify-content:flex-start!important}.sales-data-table td.cell-actions>div>button:first-child{flex:100%;justify-content:center}.ai-chat-layout{flex-direction:column!important;gap:8px!important;height:100%!important;min-height:0!important;overflow:hidden!important}.ai-chat-sidebar{z-index:1200;max-width:320px;animation:.18s ease-out aiDrawerIn;top:0;bottom:0;left:0;box-shadow:0 0 40px #14201e4d;border-radius:0 16px 16px 0!important;flex:none!important;width:84%!important;height:auto!important;position:fixed!important}.ai-chat-backdrop{z-index:1199;background:#14201e66;position:fixed;inset:0}@keyframes aiDrawerIn{0%{opacity:.5;transform:translate(-24px)}to{opacity:1;transform:none}}.ai-chat-main{flex:1 1 0!important;width:100%!important;min-height:0!important}.ai-chat-main>div:first-child{text-align:left;justify-content:flex-start!important;padding:6px 72px 6px 10px!important;font-size:.68rem!important}.customer-detail-screen{min-height:100%;height:auto!important;overflow:visible!important}.customer-detail-header{gap:8px;align-items:flex-start!important;padding:10px!important}.customer-detail-title{min-width:0;gap:8px!important}.customer-detail-title h2{overflow-wrap:anywhere;font-size:1.05rem!important}.customer-detail-actions{gap:6px!important}.customer-detail-actions>span{display:none!important}.customer-detail-tabs{overflow-x:auto;padding:8px 4px!important}.customer-detail-tabs>*{width:max-content;min-width:100%}.customer-detail-body{padding:10px 0!important;overflow:visible!important}.customer-basic-layout{grid-template-columns:1fr!important;gap:12px!important}.customer-basic-layout [style*=grid-template-columns]{grid-template-columns:1fr!important}.customer-basic-layout [style*=grid-column]{grid-column:1/-1!important}.calendar-cell-event,.calendar-cell-total{display:none!important}.calendar-cell{align-items:stretch;min-height:44px!important;padding:4px 2px!important}.calendar-cell:has(.calendar-cell-mobile-mark){min-height:68px!important}.calendar-cell.is-selected{outline:2px solid var(--accent-primary);outline-offset:-2px}.calendar-daynum{text-align:center}.calendar-daynum.is-today{background:var(--accent-primary);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;margin:0 auto;font-size:.8rem;display:flex;color:#fff!important}.calendar-undecided.is-empty{display:none}.desktop-only-action{display:none!important}.digging-filter{box-sizing:border-box;gap:4px;width:100%;max-width:100%;display:flex}.digging-filter .tab-button{white-space:normal;flex:1 1 0;justify-content:center;min-width:0;line-height:1.25;padding:8px 4px!important;font-size:.8rem!important}.sales-subtabs .subtab-desc{display:none}.sales-subtabs .tab-button{padding:10px 6px!important}.sales-subtabs .subtab-title{white-space:nowrap;font-size:.88rem}.sales-bulk-bar{display:none!important}.sales-data-table td:first-child{display:none}.sales-data-table tr{grid-template-columns:1fr}.sales-data-table td{grid-column:1}.field-mode-legend,.customer-list-column-settings,.calendar-summary-goal,.calendar-summary-breakdown{display:none!important}.calendar-toolbar{gap:4px!important;margin-bottom:6px!important}.calendar-toolbar>button,.calendar-toolbar>select{padding:5px 8px!important;font-size:.85rem!important}.calendar-nav-arrow{justify-content:center;align-items:center;min-width:44px;height:40px;font-weight:700;display:inline-flex;color:var(--accent-primary)!important;padding:0!important;font-size:1.35rem!important}.calendar-btn-today,.calendar-btn-tax{margin-left:0!important;padding:5px 8px!important;font-size:.75rem!important}.calendar-viewtoggle{margin-left:0!important}.calendar-viewtoggle button{padding:5px 8px!important;font-size:.75rem!important}.calendar-summary{font-size:.9rem;gap:6px!important;margin-bottom:6px!important;padding:6px 10px!important}.calendar-summary-total-label{display:inline}.calendar-cell-mobile-mark{flex-direction:column;align-items:center;gap:1px;width:100%;min-width:0;margin-top:2px;display:flex}.calendar-cell-name{box-sizing:border-box;width:100%;min-width:0;max-width:100%;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;text-align:left;background:#0ea5e929;border-radius:3px;padding:1px 2px;font-size:.58rem;line-height:1.25;display:block;overflow:hidden}.calendar-cell-meta{align-items:baseline;gap:3px;line-height:1.1;display:flex}.calendar-cell-more{color:var(--accent-primary);font-size:.55rem;font-weight:700}.calendar-cell-amount{color:var(--accent-primary);font-size:.6rem;font-weight:700;line-height:1}.calendar-day-detail{background:var(--surface-color);border:1px solid var(--border-subtle);border-radius:10px;margin-top:10px;display:block;overflow:hidden}.calendar-day-detail-head{background:var(--surface-hover);justify-content:space-between;align-items:center;padding:8px 12px;font-size:.95rem;display:flex}.calendar-day-detail-head button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.1rem}.calendar-day-detail-empty{text-align:center;color:var(--text-secondary);padding:16px 12px;font-size:.9rem}.calendar-day-detail-row{border:none;border-top:1px solid var(--border-subtle);text-align:left;cursor:pointer;background:0 0;align-items:baseline;gap:8px;width:100%;padding:10px 12px;font-size:.88rem;display:flex}.cdd-time{color:var(--text-secondary);flex-shrink:0}.cdd-name{overflow-wrap:anywhere;font-weight:700}.cdd-type{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.82rem;overflow:hidden}.cdd-amount{color:var(--accent-primary);flex-shrink:0;font-weight:700}.revenue-card{min-height:0!important}.revenue-compact{cursor:pointer;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;display:grid}.revenue-compact>:first-child{white-space:nowrap;grid-area:1/1}.revenue-compact>:nth-child(3){white-space:nowrap;grid-area:1/2;justify-self:end}.revenue-compact>:nth-child(2){grid-area:2/1/auto/-1;line-height:1.2}.revenue-detail{display:none}.revenue-detail.is-open{margin-top:10px;display:block}.history-add-toggle{background:var(--accent-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;margin-bottom:12px;padding:12px;font-size:.95rem;font-weight:700;display:block}.history-add-toggle.is-open{background:var(--surface-hover);color:var(--text-secondary)}.history-new-record-collapsed{display:none!important}.history-new-record-body{flex-direction:column-reverse!important}.history-new-record-body>div{width:100%!important}.history-new-record-body textarea{min-height:140px;width:100%!important}.history-new-record{padding:12px!important}.help-tabs{flex-wrap:wrap;justify-content:center!important;overflow-x:visible!important}.help-tabs .tab-button{font-size:.85rem;padding:8px 12px!important}.app-scroll-area{overflow-x:hidden!important}.history-item-main{flex-wrap:wrap;gap:6px 12px!important}.history-item-date{min-width:0!important}.history-item-content{overflow-wrap:anywhere;order:10;min-width:0;flex-basis:100%!important}.history-item-category{max-width:45vw}.history-item-category span{white-space:normal!important}.history-item-amount{margin-left:auto;min-width:0!important;padding:4px 10px!important}.history-item-view{position:relative}.history-item-actions{position:absolute;top:-6px;right:-6px;gap:2px!important}.history-item-actions button{padding:2px 4px!important;font-size:1rem!important}.history-item-amount{margin-right:56px}.recurring-table-scroll>div{min-width:760px}.billing-screen{padding:0 0 90px!important}.billing-screen>div:first-child{flex-wrap:wrap;align-items:flex-start!important}.billing-plan-layout,.billing-cycle-options,.billing-form-grid,.employee-info-grid,.staff-create-grid,.billing-account-grid{grid-template-columns:1fr!important}.billing-form-grid [style*=grid-column],.billing-account-grid [style*=grid-column]{grid-column:1/-1!important}.employee-card{grid-template-columns:1fr!important;gap:12px!important}.employee-card>div:first-child{align-items:flex-start!important}.billing-screen .glass-panel{padding:16px!important}.admin-page{overflow-x:hidden;padding:20px 12px!important}.admin-page-header{gap:16px;flex-direction:column!important;align-items:flex-start!important}.admin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.admin-main-grid,.admin-insights-main-grid,.admin-broadcast-grid,.admin-tenant-main-grid,.admin-insights-stats-grid,.admin-tenant-grid,.admin-broadcast-form-grid{grid-template-columns:1fr!important}.admin-page h1{overflow-wrap:anywhere;font-size:1.8rem!important}.admin-tenant-actions{flex-wrap:wrap;width:100%}.admin-tenant-actions>button{flex:100%;justify-content:center}.admin-tenant-actions>div{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))!important;display:grid!important}.admin-tenant-actions>div>button{min-width:0;padding:11px 8px!important}.admin-insights-header h1{white-space:nowrap;font-size:1.65rem!important}.admin-tenant-detail [style*=grid-template-columns]{grid-template-columns:1fr!important}.admin-tenant-detail [style*=grid-column]{grid-column:1/-1!important}}@media (width<=480px){.admin-kpi-grid{grid-template-columns:1fr!important}.admin-dashboard h1{font-size:1.45rem!important}.admin-insights-header{gap:12px!important}.admin-insights-header>button{padding:9px 12px!important}.admin-insights-header h1{font-size:1.35rem!important}.admin-insights-header p{font-size:.8rem!important}}.admin-btn{transition:transform .12s,box-shadow .12s,opacity .12s,background .12s}.admin-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px #0f172a26}.admin-btn:active:not(:disabled){transform:translateY(0)}.admin-btn:focus-visible,.admin-kpi-clickable:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.admin-kpi-card{transition:transform .12s,box-shadow .12s,border-color .12s}.admin-kpi-clickable:hover{transform:translateY(-2px);box-shadow:0 8px 18px #0f172a1a}@media (width<=1280px) and (width>=901px){.admin-kpi-grid{grid-template-columns:repeat(3,1fr)!important}}.nav-collapse-toggle{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-family:inherit;font-size:.72rem;font-weight:700;display:flex}.nav-collapse-toggle:hover{color:var(--text-primary);background:#0f766e12}.nav-collapse-arrow{font-size:1rem;line-height:1}.nav-bar.nav-collapsed{padding:14px 8px}.nav-bar.nav-collapsed .nav-label,.nav-bar.nav-collapsed .nav-section-label,.nav-bar.nav-collapsed .brand-texts{display:none}.nav-bar.nav-collapsed .brand-lockup{justify-content:center;padding:6px 0 12px}.nav-bar.nav-collapsed .nav-button,.nav-bar.nav-collapsed .nav-collapse-toggle{justify-content:center;padding-left:0;padding-right:0}@media (width<=900px){.nav-collapse-toggle{display:none!important}}.btn-danger{color:#fff;border-radius:var(--radius-md);cursor:pointer;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;justify-content:center;align-items:center;padding:9px 16px;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex;box-shadow:0 8px 20px #dc262638}.btn-danger:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-2px)}.btn-danger:disabled{color:#94a3b8;box-shadow:none;cursor:not-allowed;background:#e2e8f0}.ai-secretary-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:2px 4px;font-size:1.05rem;line-height:1;position:absolute;top:2px;right:8px}.ai-secretary-bubble{padding-right:30px!important}.ai-secretary-more{display:none}@media (width<=900px){.ai-secretary-bubble{cursor:pointer;font-size:.82rem!important;line-height:1.6!important}.ai-secretary-bubble:not(.expanded) .ai-secretary-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ai-secretary-bubble:not(.expanded) .ai-secretary-more{color:var(--accent-primary);margin-top:4px;font-size:.7rem;font-weight:700;display:inline-block}}.nav-mobile-menu-btn,.nav-mobile-backdrop,.nav-mobile-sheet{display:none}@media (width<=900px){.brand-lockup.desktop-only{display:none!important}.nav-bar{gap:4px;justify-content:space-around!important;overflow-x:hidden!important}.nav-section{display:contents}.nav-button{display:none}.nav-button.nav-mobile-primary,.nav-button.nav-mobile-menu-btn{flex:1 1 0;width:auto;min-width:0;max-width:92px;display:flex}.nav-hamburger{font-size:1.15rem;line-height:1}.nav-mobile-backdrop{z-index:997;background:#14201e66;display:block;position:fixed;inset:0 0 68px}.nav-mobile-sheet{background:var(--surface-color);z-index:998;border-radius:16px 16px 0 0;grid-template-columns:repeat(3,1fr);gap:10px;padding:16px 14px 18px;animation:.18s ease-out navSheetUp;display:grid;position:fixed;bottom:68px;left:0;right:0;box-shadow:0 -18px 40px #14201e38}@keyframes navSheetUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.nav-sheet-item{background:var(--surface-soft);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:13px 6px;font-size:.78rem;display:flex}.nav-sheet-item.active{color:var(--accent-primary);background:#0f766e1a;border-color:#0f766e4d;font-weight:700}.nav-sheet-item .nav-icon svg{width:20px;height:20px}body,#root,.app-container{height:100dvh;min-height:100dvh}.nav-bar{padding-bottom:env(safe-area-inset-bottom,0px)}.nav-mobile-backdrop{bottom:calc(58px + env(safe-area-inset-bottom,0px))}.nav-mobile-sheet{bottom:calc(68px + env(safe-area-inset-bottom,0px))}}
