@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap";.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:2rem}.loading-spinner .spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-spinner p{color:#4b5563;font-size:.875rem;margin:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.not-found{text-align:center;padding:4rem 2rem}.not-found h1{color:#1f2937;margin-bottom:1rem}.not-found p{color:#4b5563;font-size:1.125rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:.25rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:1rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none;position:relative}.btn:focus{outline:none;box-shadow:0 0 0 2px #007bff40}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn--sm{padding:.25rem .5rem;font-size:.875rem}.btn--md{padding:.5rem 1rem;font-size:1rem}.btn--lg{padding:.75rem 1.5rem;font-size:1.125rem}.btn--full-width{width:100%}.btn--primary{background-color:#007bff;color:#fff}.btn--primary:hover:not(:disabled){background-color:#0056b3}.btn--secondary{background-color:#6c757d;color:#fff}.btn--secondary:hover:not(:disabled){background-color:#545b62}.btn--outlined{background-color:transparent;color:#007bff;border:1px solid #007bff}.btn--outlined:hover:not(:disabled){background-color:#007bff;color:#fff}.btn--contained{background-color:#007bff;color:#fff;box-shadow:0 2px 4px #0000001a}.btn--contained:hover:not(:disabled){background-color:#0056b3;box-shadow:0 4px 8px #00000026}.btn--text{background-color:transparent;color:#007bff;padding:.25rem .5rem}.btn--text:hover:not(:disabled){background-color:#007bff1a}.btn--success{background-color:#28a745;color:#fff}.btn--success:hover:not(:disabled){background-color:#1e7e34}.btn--danger{background-color:#dc3545;color:#fff}.btn--danger:hover:not(:disabled){background-color:#c82333}.btn--warning{background-color:#ffc107;color:#343a40}.btn--warning:hover:not(:disabled){background-color:#e0a800}.btn--info{background-color:#17a2b8;color:#fff}.btn--info:hover:not(:disabled){background-color:#138496}.btn__start-icon{display:flex;align-items:center;justify-content:center;font-size:1.2em}.error-fallback{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.error-fallback__container{max-width:400px;width:100%;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;text-align:center}.error-fallback h1{font-size:1.5rem;font-weight:600;color:#e74c3c;margin-bottom:1rem}.error-fallback p{font-size:1rem;color:#666;line-height:1.5;margin-bottom:2rem}.error-fallback__actions{display:flex;gap:1rem;justify-content:center}@media (max-width: 480px){.error-fallback{padding:1rem}.error-fallback__container{padding:1.5rem}.error-fallback h1{font-size:1.25rem}.error-fallback__actions{flex-direction:column;align-items:center}}.loading-container{display:flex;justify-content:center;align-items:center;height:100vh}.loader{width:48px;height:48px;border:5px solid #1976d2;border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.header{background-color:#fff;box-shadow:0 2px 8px #00000026;position:sticky;top:10px;z-index:1000;border-radius:10px;transition:top .3s ease}.header--scrolled{top:10px}.header__container{padding:0 1rem}.header__content{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;background-color:#fff;gap:2rem}.header__back{display:flex;align-items:center;margin-right:8px}.header__back-icon{font-size:16px}.header__back-button{background-color:#6366f1!important;color:#fff!important}.header__back-button:hover{background-color:#4f46e5!important}.header__left{display:flex;align-items:center;flex:1}.header__logo h1{margin:0;font-size:1.5rem;font-weight:700;color:#007bff}.header__profile{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;cursor:pointer;transition:all .2s ease}.header__profile:hover{background-color:#f3f4f6}.header__breadcrumbs{flex:1;display:flex;flex-direction:column}.header__breadcrumbs .MuiBreadcrumbs-root .MuiBreadcrumbs-separator{color:#6c757d}.header__breadcrumbs-link{text-decoration:none!important;color:#6c757d;font-weight:400;transition:color .2s ease-in-out}.header__breadcrumbs-link:hover{color:#4b5563}.header__breadcrumbs-text{font-weight:400!important;color:#6c757d!important;transition:color .2s ease-in-out}.header__breadcrumbs .MuiTypography-root{color:#000!important;font-weight:700}.header__actions{display:flex;align-items:center;justify-content:center;gap:1rem}.header__language{display:flex;align-items:center;justify-content:center;gap:.5rem}.profile-popover__header{position:relative}.profile-popover__header-bg{background:linear-gradient(135deg,#66b0ff,#007bff);padding:20px;border-radius:8px 8px 0 0;position:relative;overflow:hidden}.profile-popover__header-bg:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.profile-popover__user-info{display:flex;align-items:center;gap:12px;position:relative;z-index:1}.profile-popover__user-details{flex:1}.profile-popover__section{padding:16px 20px;border-bottom:1px solid #f3f4f6}.profile-popover__section:last-of-type{border-bottom:none}.profile-popover__activity-items{display:flex;flex-direction:column;gap:8px}.profile-popover__activity-item{display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s ease;border-radius:6px;padding:8px 12px;font-size:13px}.profile-popover__activity-item:hover{background-color:#007bff1a}.profile-popover__activity-item:hover span{color:#007bff}.profile-popover__activity-item span{color:#6b7280;font-weight:500;flex:1}.profile-popover__badge{background-color:#007bff;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.profile-popover__account-cards{display:flex;flex-direction:column;gap:12px}.profile-popover__account-card{display:flex;flex-direction:row;align-items:center;gap:8px;padding:8px;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:center}.profile-popover__account-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px);background-color:#007bff1a;color:#007bff}.profile-popover__account-card:hover .MuiSvgIcon-root,.profile-popover__account-card:hover .MuiTypography-root{color:#007bff}.profile-popover__account-card .MuiSvgIcon-root{margin-bottom:4px}.profile-popover__bottom{padding:16px 20px;background-color:#fff;border-radius:0 0 8px 8px}.layout{display:flex;flex-direction:row;background-color:#f2f2f2;min-height:100vh;overflow:visible}.layout__main{background-color:#f8f9fa}.layout .sidebar{background-color:#f2f2f2!important}.layout .sidebar>div{margin:8px;background-color:#f2f2f2!important;border-color:#f2f2f2!important;border-radius:10px}.layout .header-background{position:fixed;top:0;left:0;width:100%;height:60px;background-color:#f8f9fa!important;z-index:1000;display:flex;align-items:center;padding-left:20px;font-weight:700}.layout__content{display:flex;flex-direction:column;justify-content:space-between;height:calc(100vh - 92px);overflow-y:overlay}.layout__main{flex:1}.layout__footer{background-color:#343a40;color:#fff;padding:1rem 0;text-align:center}.layout__footer p{margin:0;font-size:.875rem}.input-wrapper{display:flex;flex-direction:column;width:100%}.input-field .MuiOutlinedInput-root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:1rem;line-height:1.5;transition:all .2s ease-in-out;border-radius:8px}.input-field .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline{border-radius:8px;border-color:#d1d5db;border-width:1px!important}.input-field .MuiOutlinedInput-root:not(.Mui-focused):not(:hover) .MuiOutlinedInput-notchedOutline{border-width:1px!important}.input-field .MuiOutlinedInput-root:not(.Mui-disabled):hover .MuiOutlinedInput-notchedOutline{border-color:#007bff!important;border-width:1px!important}.input-field .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#007bff!important;border-width:1px!important}.input-field .MuiOutlinedInput-root.Mui-error .MuiOutlinedInput-notchedOutline{border-color:#dc3545!important;border-width:1px}.input-field .MuiOutlinedInput-root.Mui-error:not(.Mui-disabled):hover .MuiOutlinedInput-notchedOutline{border-color:#dc3545!important;border-width:1px!important}.input-field .MuiOutlinedInput-root.Mui-error.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#dc3545!important;border-width:1px!important}.input-field .MuiOutlinedInput-root.Mui-disabled{background-color:#f8f9fa;color:#6c757d}.input-field .MuiOutlinedInput-root.Mui-disabled .MuiOutlinedInput-notchedOutline,.input-field .MuiOutlinedInput-root.Mui-disabled:hover .MuiOutlinedInput-notchedOutline{border-color:#d1d5db!important;border-width:1px}.input-field .MuiInputLabel-root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.input-field .MuiFormHelperText-root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:.875rem}.input-field .MuiFormHelperText-root.Mui-error{color:#dc3545}.character-counter{display:block;padding-right:8px;margin-top:4px;font-size:12px;font-weight:500;color:#666;text-align:right}.character-counter--error{color:#dc3545;font-weight:600}.auth__error{color:#dc3545;font-size:.875rem;margin-top:.25rem;display:block}.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#007bff,#6c757d);padding:2rem}.auth__container{width:100%;max-width:450px}.auth__card{background:#fff;padding:2rem;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.auth__reset-password{margin-top:1rem;background-color:#f1f9f15b}.auth__form{margin-top:2rem}.auth__form .input{margin-bottom:1rem}.auth__form__button{width:100%!important;margin-top:1rem!important;height:44px!important}.auth__field .MuiTextField-root .MuiOutlinedInput-root{height:44px!important}.auth__field{margin-bottom:1rem}.auth__field .MuiTextField-root .MuiOutlinedInput-root{height:44px!important;transition:all .3s ease!important}.auth__field .MuiTextField-root .MuiOutlinedInput-root .MuiInputAdornment-root{color:#6b7280;transition:color .3s ease}.auth__field .MuiTextField-root .MuiOutlinedInput-root .MuiInputAdornment-root svg{width:20px;height:20px}.auth__field .MuiTextField-root .MuiOutlinedInput-root .MuiInputAdornment-root .password-toggle-btn{padding:4px!important;color:#6b7280!important;transition:all .3s ease!important}.auth__field .MuiTextField-root .MuiOutlinedInput-root .MuiInputAdornment-root .password-toggle-btn:hover{color:#007bff!important;background:#007bff1a!important}.auth__field .MuiTextField-root .MuiOutlinedInput-root .MuiInputAdornment-root .password-toggle-btn svg{width:18px!important;height:18px!important}.auth__field .MuiTextField-root .MuiOutlinedInput-root:hover .MuiInputAdornment-root,.auth__field .MuiTextField-root .MuiOutlinedInput-root.Mui-focused .MuiInputAdornment-root{color:#007bff}.auth__field .MuiTextField-root .MuiOutlinedInput-root:hover .MuiInputAdornment-root .password-toggle-btn,.auth__field .MuiTextField-root .MuiOutlinedInput-root.Mui-focused .MuiInputAdornment-root .password-toggle-btn{color:#007bff!important}.auth__field .MuiTextField-root .MuiOutlinedInput-root input{color:#1f2937!important}.auth__field .MuiTextField-root .MuiOutlinedInput-root input::placeholder{color:#6b7280!important}.auth__field .MuiTextField-root .MuiInputLabel-root{color:#4b5563!important;font-weight:500!important}.auth__field .MuiTextField-root .MuiInputLabel-root.Mui-focused{color:#007bff!important}.auth__field .MuiTextField-root .MuiFormHelperText-root{color:#dc3545!important;font-weight:500!important;margin-top:.5rem!important}.auth__error{display:block;margin-bottom:.5rem}.auth__error-message{color:#dc3545;font-size:.875rem;margin:0}.auth__toggle{margin-top:2rem;text-align:center}.auth__toggle p{color:#4b5563;margin:0}.auth__toggle-btn{background:none;border:none;color:#007bff;font-weight:600;cursor:pointer;margin-left:.5rem;text-decoration:underline}.auth__toggle-btn:hover{color:#0062cc}.auth h1{text-align:center;color:#007bff;margin-bottom:0}.auth h3{text-align:center;color:#1f2937;margin-bottom:0;margin-top:.5rem}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.font-optimized{font-display:swap;font-feature-settings:"kern" 1,"liga" 1,"calt" 1;text-rendering:optimizeLegibility}.japanese-optimized{font-family:Noto Sans JP,sans-serif;font-feature-settings:"kern" 1,"liga" 1,"calt" 1,"palt" 1;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-loading{opacity:0;transition:opacity .3s ease-in-out}.font-loaded{opacity:1}.font-fallback{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.font-critical{font-weight:400;font-style:normal}.font-non-critical{font-weight:300,500,700,900;font-display:optional}html,body{overflow:hidden!important}body{overflow-y:hidden!important;padding-right:0!important}.ag-cell-focus:not(.ag-cell-range-selected):focus-within,.ag-cell-range-single-cell,.ag-cell-range-single-cell.ag-cell-range-handle,.ag-context-menu-open .ag-cell-focus:not(.ag-cell-range-selected),.ag-context-menu-open .ag-full-width-row.ag-row-focus .ag-cell-wrapper.ag-row-group,.ag-full-width-row.ag-row-focus:focus .ag-cell-wrapper.ag-row-group{outline:none!important;border:none!important}.ag-cell-wrapper{height:100%!important}.ag-grid-container,.ag-root-wrapper{width:100%!important}.ag-checkbox-input-wrapper .ag-checkbox-input:checked{background-color:#007bff;border-color:#007bff}.ag-checkbox-input-wrapper .ag-checkbox-input:hover{border-color:#007bff}.ag-checkbox-input-wrapper .ag-checkbox-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.ag-checkbox-input-wrapper .ag-checkbox-input-wrapper-checked{background-color:#007bff!important;border-color:#007bff!important}.ag-header-select-all .ag-checkbox-input-wrapper .ag-checkbox-input:checked{background-color:#007bff!important;border-color:#007bff!important}:where(.ag-theme-checkboxStyle-5) .ag-checkbox-input-wrapper:where(.ag-checked),:where(.ag-theme-checkboxStyle-5) .ag-radio-button-input-wrapper:where(.ag-checked){background-color:#007bff!important;border-color:#007bff!important}:where(.ag-theme-checkboxStyle-5) .ag-checkbox-input-wrapper:where(.ag-indeterminate){background-color:#007bff!important;border-color:#007bff!important}.MuiOutlinedInput-root:not(.Mui-focused):not(:hover) .MuiOutlinedInput-notchedOutline{border-width:1px!important}.MuiOutlinedInput-notchedOutline{border-width:1px!important}.MuiOutlinedInput-root:not(.Mui-disabled):hover .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color, #007bff);border-width:1px!important}.MuiFormControl-root .MuiOutlinedInput-root:not(.Mui-disabled):hover .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color, #007bff);border-width:1px!important}.MuiOutlinedInput-root:not(.Mui-focused):not(:hover):not(.Mui-disabled) .MuiOutlinedInput-notchedOutline{border-width:1px!important}.MuiButton-loading{color:#00000042!important}.MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline,.MuiPickersOutlinedInput-notchedOutline{border-width:1px!important}.MuiPickersOutlinedInput-root:not(.Mui-focused):hover .MuiPickersOutlinedInput-notchedOutline{border-width:1px!important;border-color:var(--primary-color, #007bff)!important}:root{--primary-color: #007bff;--secondary-color: #6c757d;--success-color: #28a745;--danger-color: #dc3545;--warning-color: #ffc107;--info-color: #17a2b8;--light-color: #f8f9fa;--dark-color: #343a40;--border-radius: .25rem;--border-radius-lg: .5rem;--border-radius-sm: .2rem;--spacing-unit: 1rem;--container-max-width: 1200px;--font-family-base: Noto Sans JP, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;--font-family-japanese: Noto Sans JP, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.5;color:#343a40;background-color:#f8f9fa;font-feature-settings:"kern" 1,"liga" 1,"calt" 1}.japanese-text{font-family:Noto Sans JP,sans-serif;font-feature-settings:"kern" 1,"liga" 1,"calt" 1,"palt" 1;text-rendering:optimizeLegibility}.font-loading{font-display:swap}.container{max-width:1140px;margin:0 auto;padding:0 1rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.ag-header-cell-text,.ag-cell,.ag-paging-row-summary-panel,.ag-paging-description{font-family:Noto Sans JP,sans-serif!important}.ag-header-cell-resize:after{background:color-mix(in srgb,transparent,#181d1f 15%)!important}.not-found-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1.5rem}.not-found-paper{width:100%;max-width:600px;padding:6rem;text-align:center;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;background:#fff;position:relative;overflow:hidden}.not-found-paper:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#007bff,#17a2b8,#28a745)}.not-found-content{position:relative;z-index:1}.not-found-icon{margin-bottom:2rem}.not-found-icon .error-icon{font-size:6rem;color:#007bff;opacity:.8;animation:float 3s ease-in-out infinite}.error-code{font-size:8rem;font-weight:800;color:#007bff;line-height:1;margin:0;text-shadow:0 4px 8px rgba(0,0,0,.1);animation:pulse 2s ease-in-out infinite}.error-title{font-size:2.25rem;font-weight:700;color:#343a40;margin:1.5rem 0 1rem;line-height:1.2}.error-description{font-size:1.125rem;color:#666;line-height:1.625;margin-bottom:3rem;max-width:500px;margin-left:auto;margin-right:auto}.action-buttons{display:flex;gap:1.5rem;justify-content:center;align-items:center;margin-bottom:3rem;flex-wrap:wrap}.action-buttons .home-button{min-width:180px}.action-buttons .back-button{min-width:140px}.help-section{padding-top:1.5rem;border-top:1px solid #e0e0e0}.help-section .help-text{color:#999;font-style:italic}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (max-width: 768px){.not-found-container{padding:1rem}.not-found-paper{padding:3rem}.error-code{font-size:6rem}.error-title{font-size:1.875rem}.error-description{font-size:1rem}.action-buttons{flex-direction:column;gap:1rem}.action-buttons .home-button,.action-buttons .back-button{width:100%;max-width:300px}}@media (max-width: 576px){.not-found-paper{padding:2rem}.error-code{font-size:4rem}.error-title{font-size:1.5rem}.not-found-icon .error-icon{font-size:4rem}}@media (prefers-color-scheme: dark){.not-found-paper{background:#1f2937;color:#fff}.error-title{color:#fff}.error-description{color:#d1d5db}.help-section{border-top-color:#4b5563}.help-section .help-text{color:#9ca3af}}.custom-toast .toast-alert{min-width:300px;max-width:500px}.custom-toast .toast-alert .MuiAlertTitle-root{margin-bottom:.25rem}
