@charset "UTF-8";body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--c-bg:#f9fafb;--c-surface:#fff;--c-band:#f6f8fa;--c-text:#1f2937;--c-text-light:#6b7280;--c-muted:#57606a;--c-primary:#2563eb;--c-info:#2563eb;--c-blue:#2563eb;--c-success:#10b981;--c-green:#059669;--c-danger:#ef4444;--c-red:#dc2626;--c-border:#e5e7eb;--radius:6px;--container-max:1600px;--shadow-sm:0 1px 2px #0000000d;--shadow:0 1px 0 #1b1f240a,0 8px 24px #8c959f33;--space-1:6px;--space-2:10px;--space-3:16px;--space-4:24px;--space-5:32px}button,input,select,textarea{font:inherit}@media (prefers-color-scheme:dark){:root{--c-bg:#111827;--c-surface:#1f2937;--c-text:#f3f4f6;--c-muted:#9ca3af;--c-primary:#3b82f6;--c-success:#34d399;--c-danger:#f87171;--c-border:#374151;--shadow:0 1px 3px #0000004d}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.app-wrapper{background:#f9fafb;background:var(--c-bg);color:#1f2937;color:var(--c-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}.navbar{align-items:center;backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d;display:flex;height:60px;inset:0 0 auto 0;justify-content:space-between;padding:0 16px;padding:0 var(--space-3);position:fixed;z-index:999}.menu{display:flex;gap:16px;gap:var(--space-3);list-style:none;margin:0;padding:0}.menu li a{align-items:center;border-radius:6px;color:#6b7280;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:8px 12px;text-decoration:none;transition:background-color .15s ease,color .15s ease,transform .02s ease}.menu li a:hover{background-color:#f3f4f6;color:#1f2937}.menu li a:active{transform:translateY(1px)}.menu li a.active{background-color:#eff6ff;border:1px solid #bfdbfe;color:#2563eb}.card{background-color:var(--c-surface);padding:clamp(18px,2.5vw,32px)}.card,.grid-table-wrapper{border:1px solid #e5e7eb;border-radius:6px;border-radius:var(--radius);box-shadow:0 1px 0 #1b1f240a,0 8px 24px #8c959f33;box-shadow:var(--shadow)}.grid-table-wrapper{background:var(--c-surface);border:1px solid var(--c-border);margin-top:var(--space-3)}.grid-table-wrapper::-webkit-scrollbar{height:6px;width:6px}.grid-table-wrapper::-webkit-scrollbar-track{background:#f9fafb}.grid-table-wrapper::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.grid-table-wrapper::-webkit-scrollbar-thumb:hover{background:#9ca3af}.grid-table{font-size:14px}.grid-table thead th{background:#f9fafb;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;color:#1f2937;font-weight:600;padding:12px;z-index:1}.grid-table td,.grid-table th{border-bottom:1px solid #f3f4f6;border-right:1px solid #f3f4f6;color:#1f2937;color:var(--c-text);padding:10px 12px}.grid-table tbody tr:hover td{background:#f3f4f6;transition:background-color .15s ease}.grid-table tr:last-child td{border-bottom:0}.number-cell{text-align:right}.btn-group{display:flex;gap:10px;gap:var(--space-2);justify-content:flex-end;margin-bottom:10px;margin-bottom:var(--space-2)}.btn{background:#fff;border:1px solid #e5e7eb;border:1px solid var(--c-border);box-shadow:0 1px 0 #1b1f240a,0 8px 24px #8c959f33;box-shadow:var(--shadow);color:#1f2937;color:var(--c-text);font-weight:600;padding:8px 12px;transition:transform .02s ease,background-color .15s ease,border-color .15s ease}.btn:hover{background-color:#f9fafb;border-color:#d1d5db;color:#1f2937}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.5}.action-btn,.btn.add,.btn.primary{background-color:#2563eb;border-color:#1d4ed8;color:#fff}.action-btn:hover,.btn.add:hover,.btn.primary:hover{background-color:#1d4ed8;border-color:#1e40af}.action-btn:active,.btn.add:active,.btn.primary:active{transform:translateY(1px)}.btn.save{background-color:#2563eb;border-color:#1d4ed8;color:#fff}.btn.save:hover{background-color:#1d4ed8;border-color:#1e40af}.btn.danger{background-color:#ef4444;border-color:#dc2626;color:#fff}.btn.danger:hover{background-color:#dc2626;border-color:#b91c1c}.home-summary-box{background:#fff;border:1px solid #e5e7eb;border:1px solid var(--c-border);border-radius:6px;border-radius:var(--radius);box-shadow:0 1px 0 #1b1f240a,0 8px 24px #8c959f33;box-shadow:var(--shadow);color:#1f2937;color:var(--c-text);line-height:1.6;margin-bottom:16px;margin-bottom:var(--space-3);padding:16px;padding:var(--space-3)}.home-actions{display:flex;flex-wrap:wrap;gap:10px;gap:var(--space-2)}:focus-visible{border-radius:4px;outline:2px solid #2563eb80;outline-offset:2px}a{color:#2563eb;color:var(--c-primary);text-decoration:none}a:hover{opacity:.8}.navbar-egg{align-items:center;color:#1f2937;color:var(--c-text);cursor:pointer;display:inline-flex;font-weight:600;gap:6px}.navbar-right{gap:12px}.navbar-right,.user-profile{align-items:center;display:flex}.user-profile{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;cursor:pointer;padding:6px 12px;transition:all .15s ease}.user-profile:hover{background:#e5e7eb;border-color:#d1d5db}.user-avatar{align-items:center;background:#2563eb;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:24px;justify-content:center;margin-right:8px;width:24px}.user-name{color:#1f2937;font-size:13px;font-weight:500;white-space:nowrap}.logout-btn{background:#2563eb;border:1px solid #1d4ed8;border-radius:6px;box-shadow:0 1px 0 #1b1f240a,0 8px 24px #8c959f33;box-shadow:var(--shadow);color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 12px;transition:all .15s ease}.logout-btn:hover{background:#1d4ed8;border-color:#1e40af}.logout-btn:active{transform:translateY(1px)}.logout-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:1024px){.menu{gap:10px;gap:var(--space-2)}.btn-group{gap:6px;gap:var(--space-1)}.btn{border-radius:6px;font-size:12px;padding:8px 10px}}@media (max-width:560px){.container{padding-left:10px;padding-left:var(--space-2);padding-right:10px;padding-right:var(--space-2)}.menu li a{font-size:12px;padding:6px 10px}.navbar{height:56px;padding:0 10px;padding:0 var(--space-2)}.navbar-right{gap:8px}.user-profile{padding:4px 10px}.logout-btn{padding:6px 10px}.grid-table,.logout-btn{font-size:12px}.grid-table td,.grid-table th{padding:8px 10px}}:root{--page-pad:8px}.container{margin:0 auto;max-width:1600px;max-width:var(--container-max);padding:84px 8px 32px;padding:calc(60px + var(--space-4)) var(--page-pad) var(--space-5)}.grid-table-wrapper{border-left:none;border-right:none;box-shadow:none;margin-bottom:16px;margin-left:-8px;margin-left:calc(var(--page-pad)*-1);margin-right:-8px;margin-right:calc(var(--page-pad)*-1);margin-top:16px;width:calc(100% + 16px);width:calc(100% + var(--page-pad)*2)}@media (min-width:1680px){.container{max-width:90vw}}@media (max-width:560px){:root{--page-pad:4px}}@media (prefers-color-scheme:dark){.navbar{background:#1f2937;border-bottom-color:#374151}.menu li a{color:#9ca3af}.menu li a:hover{background-color:#374151;color:#f3f4f6}.menu li a.active{background-color:#1e3a8a;border-color:#2563eb;color:#3b82f6}.card,.grid-table-wrapper{background-color:#1f2937;border-color:#374151}.grid-table thead th{background:#111827}.grid-table td,.grid-table th,.grid-table thead th{border-color:#374151;color:#f3f4f6}.grid-table tbody tr:hover td{background:#1f2937}.btn{background:#111827;border-color:#374151;color:#f3f4f6}.btn:hover{background:#1f2937;border-color:#4b5563}.user-profile{background:#374151;border-color:#4b5563}.user-name{color:#f3f4f6}.home-summary-box{background:#1f2937;border-color:#374151}}.memo-wrapper{position:relative}.memo-btn{background:none;border:none;border-radius:6px;cursor:pointer;font-size:20px;padding:4px 8px;transition:background .2s}.memo-btn:hover{background:#ffffff26}.memo-btn.has-memo:after{background:#f59e0b;border-radius:50%;content:"";height:7px;position:absolute;right:4px;top:2px;width:7px}.memo-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;gap:8px;padding:12px;position:absolute;right:0;top:calc(100% + 8px);width:300px;z-index:9999}.memo-dropdown__header{align-items:center;color:#334155;display:flex;font-size:14px;font-weight:600;justify-content:space-between}.memo-close{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:14px}.memo-close:hover{color:#334155}.memo-textarea{border:1px solid #e2e8f0;border-radius:6px;box-sizing:border-box;font-size:13px;height:120px;line-height:1.6;outline:none;padding:8px;resize:vertical;width:100%}.memo-textarea:focus{border-color:#093eff}.memo-dropdown__footer{display:flex;gap:8px;justify-content:flex-end}.grid-container{display:flex;flex-direction:column;gap:12px}.grid-container h2{color:var(--c-text);font-weight:700;margin:0}.gh-band{background:var(--c-band);border:1px solid var(--c-border);border-radius:8px;box-shadow:var(--shadow-sm);margin-bottom:8px;padding:16px 20px}.gh-band__row{border-bottom:1px solid #0000000d;gap:12px;justify-content:space-between;margin-bottom:16px;padding-bottom:10px}.gh-band__row,.gh-band__title{align-items:center;display:flex}.gh-band__title{font-weight:800;gap:8px}.gh-band__title,.gh-octo{color:var(--c-blue);font-size:14px}.gh-badge{background:#fff;border:1px solid var(--c-blue);border-radius:4px;color:var(--c-blue);display:inline-block;font-size:11px;font-weight:700;padding:2px 8px}.gh-band__kbd{align-items:center;color:var(--c-muted);display:flex;font-size:11px;gap:6px}.kbd{background:#f8fafc;border:1px solid var(--c-border);border-bottom:2px solid #cbd5e1;border-radius:4px;color:#475569;font-size:10px;font-weight:600;padding:1px 5px}.gh-band__filters{align-items:flex-end;display:flex;flex-wrap:wrap;gap:20px}@media (max-width:768px){.gh-band__filters{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}}.filter-item{display:flex;flex-direction:column;gap:6px}.filter-item label{color:var(--c-text);font-size:12px;font-weight:700;margin-left:2px}.MuiAutocomplete-root .MuiInputBase-input,.gh-input{background:#fff!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;font-size:12px!important;line-height:1.2!important;outline:none!important;padding:6px 8px!important;transition:border-color .15s ease,box-shadow .15s ease}.MuiAutocomplete-root .MuiInputBase-input:focus,.gh-input:focus{border-color:var(--c-blue)!important;box-shadow:0 0 0 2px #2563eb2e!important}.MuiAutocomplete-popper .MuiAutocomplete-paper{border:1px solid var(--c-border);border-radius:8px;box-shadow:var(--shadow)}.button-group-right,.gh-actions{display:flex;gap:6px;justify-content:flex-end}.btn{background:#2563eb;border:1px solid #0000;border-radius:6px;box-shadow:0 1px 2px #0000000d;color:#fff;cursor:pointer;font-size:13px;font-weight:700;padding:6px 10px;transition:all .15s ease}.btn:hover:not(:disabled){background:#1e40af;border-color:#1e3a8a;box-shadow:0 4px 6px #2563eb26}.btn:active:not(:disabled){box-shadow:inset 0 1px 3px #00000026;transform:translateY(1px)}.btn:focus-visible{outline:2px solid #1e40af;outline-offset:2px}.btn-primary{background:var(--c-green);border-color:#047857;box-shadow:var(--shadow-sm);color:#fff}.btn-primary:hover:not(:disabled){background:#047857;border-color:#065f46;box-shadow:0 4px 6px #05966926}.btn-primary:active:not(:disabled){box-shadow:inset 0 2px 4px #0000001a}.btn-danger{background:var(--c-red);border-color:#b91c1c;box-shadow:var(--shadow-sm);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#991b1b;box-shadow:0 4px 6px #dc262626}.btn-danger:active:not(:disabled){box-shadow:inset 0 2px 4px #0000001a}.btn-ghost{background:#fff;border-color:#d1d5db;color:#374151}.btn-ghost:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.dual-scroll-container{background:#fff;border:1px solid var(--c-border);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden}.top-scroll{background:#f6f8fa;border-bottom:1px solid var(--c-border);flex-shrink:0;height:14px;margin:0;overflow-x:auto;overflow-y:hidden;padding:0}.top-scroll-inner{height:1px;width:1px}.top-scroll::-webkit-scrollbar{height:14px}.top-scroll::-webkit-scrollbar-track{background:#f6f8fa}.top-scroll::-webkit-scrollbar-thumb{background:#d0d7de;border:2px solid #f6f8fa;border-radius:7px}.top-scroll::-webkit-scrollbar-thumb:hover{background:#b1bac4}.grid-table-wrapper{border:none;flex:1 1;margin:0;max-height:100vh}.grid-table{border-collapse:initial;border-spacing:0;font-size:12px;line-height:1.25;width:100%}.grid-table thead th{background:#f8fafc;border-bottom:1px solid var(--c-border);border-right:1px solid var(--c-border);color:var(--c-text);font-weight:800;padding:6px 8px;z-index:10}.grid-table thead th:last-child{border-right:none}.grid-table td,.grid-table th{border-bottom:1px solid var(--c-border);border-right:1px solid var(--c-border);padding:6px 8px}.grid-table td:last-child{border-right:none}.grid-table td:not(:first-child),.grid-table th:not(:first-child){overflow:hidden;text-overflow:clip;white-space:nowrap}.grid-table td:first-child,.grid-table th:first-child{border-right:1px solid var(--c-border);width:40px}.grid-table input[type=checkbox]{height:16px;margin:0;vertical-align:middle;width:16px}.grid-table tbody tr:hover td{background:#f9fafc}.grid-table input,.grid-table select{background:#0000;border:none;box-sizing:border-box;font-size:12px;height:24px;padding:2px 4px;text-align:center;width:100%}.grid-table input.right-align{text-align:right}.grid-table .cell-left{text-align:left}.required-label:after{color:var(--c-red);content:" *";margin-left:4px}.grid-table-with-fixed-columns{position:relative}.grid-table-with-fixed-columns tbody td:nth-child(-n+7){background-color:#fff;border-right:1px solid var(--c-border);position:-webkit-sticky;position:sticky}.grid-table-with-fixed-columns thead th:nth-child(-n+7){background-color:#f8fafc;border-right:1px solid var(--c-border);position:-webkit-sticky;position:sticky;z-index:11}.grid-table-with-fixed-columns tbody td:first-child,.grid-table-with-fixed-columns thead th:first-child{left:0;width:40px;z-index:5}.grid-table-with-fixed-columns thead th:first-child{z-index:11}.grid-table-with-fixed-columns tbody td:nth-child(2),.grid-table-with-fixed-columns thead th:nth-child(2){left:40px;z-index:5}.grid-table-with-fixed-columns thead th:nth-child(2){z-index:11}.grid-table-with-fixed-columns tbody td:nth-child(3),.grid-table-with-fixed-columns thead th:nth-child(3){left:95px;z-index:5}.grid-table-with-fixed-columns thead th:nth-child(3){z-index:11}.grid-table-with-fixed-columns tbody td:nth-child(4),.grid-table-with-fixed-columns thead th:nth-child(4){left:295px;z-index:5}.grid-table-with-fixed-columns thead th:nth-child(4){z-index:11}.grid-table-with-fixed-columns tbody td:nth-child(5),.grid-table-with-fixed-columns thead th:nth-child(5){left:405px;z-index:5}.grid-table-with-fixed-columns thead th:nth-child(5){z-index:11}.grid-table-with-fixed-columns tbody td:nth-child(6),.grid-table-with-fixed-columns thead th:nth-child(6){left:655px;z-index:5}.grid-table-with-fixed-columns thead th:nth-child(6){z-index:11}.grid-table-with-fixed-columns tbody td:nth-child(7),.grid-table-with-fixed-columns thead th:nth-child(7){border-right:2px solid var(--c-border);box-shadow:1px 0 3px #0000000f;left:755px;z-index:5}.grid-table-with-fixed-columns thead th:nth-child(7){z-index:11}.grid-table-with-fixed-columns tbody tr[style*=fffbf0] td:nth-child(-n+7){background-color:#fffbf0}.grid-table td.has-popper{overflow:visible}.react-datepicker-popper{z-index:5000!important}.MuiAutocomplete-popper{z-index:5001!important}.grid-table-with-fixed-columns tbody tr.empty-row td{box-shadow:none;position:static}.grid-table tfoot tr td{background:#eef1f4;border-top:2px solid #adadad;bottom:0;position:-webkit-sticky;position:sticky;z-index:2}.grid-table-with-fixed-columns tfoot td:first-child{left:0;z-index:6}.grid-table-with-fixed-columns tfoot td:nth-child(2){left:40px;z-index:6}.grid-table-with-fixed-columns tfoot td:nth-child(3){left:95px;z-index:6}.grid-table-with-fixed-columns tfoot td:nth-child(4){left:295px;z-index:6}.grid-table-with-fixed-columns tfoot td:nth-child(5){left:405px;z-index:6}.grid-table-with-fixed-columns tfoot td:nth-child(6){left:655px;z-index:6}.grid-table-with-fixed-columns tfoot td:nth-child(7){border-right:2px solid var(--c-border);box-shadow:1px 0 3px #0000000f;left:755px;z-index:6}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-wrapper{border:0;display:inline-block;padding:0}.react-datepicker{background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;color:#000;display:inline-block;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:normal;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{line-height:0;z-index:1}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative;text-align:center}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__year-dropdown-container--select{display:inline-block;margin:0 15px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#000;font-size:.944rem;font-weight:700;margin-top:0}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-datepicker__navigation{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;padding:0;position:absolute;text-align:center;text-indent:-999em;top:2px;width:32px;z-index:1}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{display:block;margin-left:auto;margin-right:auto;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{font-size:20px;position:relative;top:-1px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__input-time-container{clear:both;float:left;margin:5px 0 10px 15px;text-align:left;width:100%}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{display:inline-block;margin-left:5px}.react-datepicker__time-container{border-left:1px solid #aeaeae;float:right;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{border-bottom-right-radius:.3rem;margin:0 auto;overflow-x:hidden;text-align:center;width:85px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:initial;height:calc(195px + .85rem);list-style:none;margin:0;overflow-y:scroll;padding-left:0;padding-right:0;width:100%}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{background-color:#f0f0f0;cursor:pointer}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{background-color:initial;cursor:default}.react-datepicker__week-number{color:#ccc;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{margin-bottom:-8px;white-space:nowrap}.react-datepicker__week{white-space:nowrap}.react-datepicker__day,.react-datepicker__day-name,.react-datepicker__time-name{color:#000;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{background-color:#3dcc4a;border-radius:.3rem;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{background-color:#ff6803;border-radius:.3rem;color:#fff;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{background-color:#333;border-radius:4px;bottom:100%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{opacity:1;visibility:visible}.react-datepicker__day--in-range,.react-datepicker__day--in-selecting-range,.react-datepicker__day--selected,.react-datepicker__month-text--in-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--in-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--in-range,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{background-color:#bad9f1;border-radius:.3rem;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{color:#ccc;cursor:default}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{background-color:#333;border-radius:4px;bottom:70%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__input-container{display:inline-block;position:relative;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:initial;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__month-read-view,.react-datepicker__month-year-read-view,.react-datepicker__year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover,.react-datepicker__year-read-view:hover{cursor:pointer}.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__year-read-view--down-arrow{right:-16px;top:0;transform:rotate(135deg)}.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown{background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;left:25%;position:absolute;text-align:center;top:30px;width:50%;z-index:1}.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover,.react-datepicker__year-dropdown:hover{cursor:pointer}.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable,.react-datepicker__year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__month-option,.react-datepicker__month-year-option,.react-datepicker__year-option{display:block;line-height:20px;margin-left:auto;margin-right:auto;width:100%}.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type,.react-datepicker__year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type,.react-datepicker__year-option:last-of-type{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;-webkit-user-select:none;user-select:none}.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover,.react-datepicker__year-option:hover{background-color:#ccc}.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected,.react-datepicker__year-option--selected{left:15px;position:absolute}.react-datepicker__close-icon{background-color:initial;border:0;cursor:pointer;display:table-cell;height:100%;outline:0;padding:0 6px 0 0;position:absolute;right:0;top:0;vertical-align:middle}.react-datepicker__close-icon:after{background-color:#216ba5;border-radius:50%;color:#fff;content:"×";cursor:pointer;display:table-cell;font-size:12px;height:16px;line-height:1;padding:2px;text-align:center;vertical-align:middle;width:16px}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{background-color:#ccc;cursor:default}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;clear:left;cursor:pointer;font-weight:700;padding:5px 0;text-align:center}.react-datepicker__portal{align-items:center;background-color:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2147483647}.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:3rem;width:3rem}@media (max-height:550px),(max-width:400px){.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:2rem;width:2rem}}.react-datepicker__portal .react-datepicker-time__header,.react-datepicker__portal .react-datepicker__current-month{font-size:1.44rem}.react-datepicker__children-container{height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem;width:13.8rem}.react-datepicker__aria-live{border:0;-webkit-clip-path:circle(0);clip-path:circle(0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker__calendar-icon{height:1em;vertical-align:-.125em;width:1em}.grid-container{background:#0000;border-radius:0;box-shadow:none;font-family:Noto Sans KR,Segoe UI,Malgun Gothic,system-ui,sans-serif;margin:24px auto;max-width:100%;padding:0}.subtotal-row,.subtotal-row td{background:#f2ffed!important;font-weight:700!important}.subtotal-row{border-bottom:2px solid #57606a!important;border-top:2px solid #57606a!important}.etctotal-row,.etctotal-row td{background:#fbf4c1!important;font-weight:700!important}.etctotal-row{border-bottom:2px solid #57606a!important;border-top:2px solid #57606a!important}.total-row,.total-row td{background:#fae0d4!important;color:var(--c-text)!important;font-weight:700!important}.total-row{border-bottom:2px solid #57606a!important;border-top:2px solid #57606a!important}.search-bar{align-items:center;background:repeating-linear-gradient(-45deg,var(--c-band),var(--c-band) 12px,#fff 12px,#fff 24px);border:1px solid var(--c-border);box-shadow:var(--shadow-subtle);display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;padding:10px 12px;position:relative;z-index:3}.search-bar label{color:var(--c-text);font-size:13px;font-weight:800;margin-right:4px}.month-picker,.search-bar .react-datepicker__input-container input{background:#fff;border:1px solid var(--c-border);border-radius:6px;font-size:13px;outline:none;padding:6px 8px;transition:border-color .15s ease,box-shadow .15s ease}.month-picker:focus,.search-bar .react-datepicker__input-container input:focus{border-color:var(--c-blue);box-shadow:0 0 0 3px #0969da33}.add-row-btn,.print-btn,.search-btn{border-radius:6px;cursor:pointer;font-size:13px;font-weight:800;padding:6px 12px;transition:filter .15s ease,transform .02s ease}.search-btn{background:#0969da;border:1px solid #0860ca;color:#fff}.print-btn{background:#6e7781;border:1px solid #57606a;color:#fff}.add-row-btn{background:#2ea44f;border:1px solid #2c974b;color:#fff}.add-row-btn:hover,.print-btn:hover,.search-btn:hover{filter:brightness(1.05)}.add-row-btn:active,.print-btn:active,.search-btn:active{transform:translateY(1px)}.button-group-right{display:flex;gap:10px;justify-content:flex-end;margin-bottom:10px}.grid-table-wrapper{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #adadad;border-radius:0;box-shadow:1px 2px 4px #00000014;overflow:auto;position:relative;z-index:1}.grid-table{border-collapse:collapse;color:var(--c-text);font-family:Calibri,Noto Sans KR,Malgun Gothic,system-ui,sans-serif;font-size:13px;min-width:100%;table-layout:auto;width:-webkit-max-content;width:max-content}.grid-table thead th{background:#e9eef8;border-bottom:2px solid #8ea9c1;border-right:1px solid #d0d0d0;font-size:12px;font-weight:700;padding:5px 6px;position:-webkit-sticky;position:sticky;text-align:center;top:0;-webkit-user-select:none;user-select:none;white-space:nowrap;z-index:2}.grid-table thead th.header-purchase{background:#fff8c5!important}.grid-table td,.grid-table th{border-bottom:1px solid #d0d0d0;border-right:1px solid #d0d0d0;line-height:1.4;overflow:hidden;padding:3px 6px;text-align:center;text-overflow:clip;vertical-align:middle;white-space:nowrap}.grid-table tbody tr:hover td{background:#e8f0fe;transition:background .1s ease}td span{box-sizing:border-box;color:#24292f;padding:4px 8px}.right-align,td span{display:inline-block;width:100%}.right-align{padding-right:8px;text-align:right!important}.account-cell{text-align:left!important}.react-datepicker-popper{z-index:9999!important}.MuiAutocomplete-popper{z-index:9998!important}.date-range-wrapper{align-items:center;display:inline-flex}@media (max-width:560px){.grid-table{font-size:12px}.grid-table td,.grid-table th,.grid-table thead th{padding:6px 8px}}@media print{.grid-table-wrapper{overflow:visible!important;width:100%!important;z-index:auto}.grid-table{border-collapse:collapse;font-size:9pt;min-width:0!important;min-width:auto!important;transform:none!important;transform-origin:top left;width:100%!important}.app-wrapper,body{background:#fff!important}.button-group-right,.search-bar{display:none!important}.grid-table td.col-remark,.grid-table th.col-remark{max-width:400px!important;min-width:200px!important;overflow:visible!important;white-space:normal!important;word-break:break-all!important}.grid-table tbody tr:hover td{background:#0000!important}.col-print-hide{display:none!important}}*{box-sizing:border-box}body{color:var(--c-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0;padding:0}.home-root{background:#fff;min-height:100vh;padding:32px;width:100%}.card{background-color:#fff;border:1px solid var(--c-border);border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:24px;transition:all .2s ease}.card:hover{border-color:#d1d5db;box-shadow:0 4px 6px #00000012}.card-header{align-items:center;border-bottom:1px solid var(--c-border);display:flex;flex-shrink:0;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.card-title{color:var(--c-text);font-size:1.1rem;font-weight:600;margin:0}.card-hero{background:#f3f4f6;border:1px solid var(--c-border);color:var(--c-text);margin-bottom:24px;overflow:hidden;padding:32px;position:relative}.card-hero:before{background:#0000;content:"";height:100%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:100%}.hero-header{align-items:center;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:16px;position:relative;z-index:1}.hero-date-section{flex:1 1;gap:16px;min-width:200px}.hero-date-section,.hero-emoji{align-items:center;display:flex}.hero-emoji{flex-shrink:0;font-size:32px}.hero-date-title{color:var(--c-text);font-size:1.25rem;font-weight:600;margin:0}.hero-date-subtitle{color:var(--c-text-light);font-size:.875rem;font-weight:400;margin:4px 0 0;opacity:.7}.hero-stats{flex:1 1;flex-wrap:wrap;gap:20px;min-width:250px}.hero-stat,.hero-stats{align-items:center;display:flex}.hero-stat{flex-direction:column;gap:6px}.hero-stat-label{color:var(--c-text-light);font-size:.8rem;font-weight:500;opacity:.6}.hero-stat-value{color:var(--c-text);font-size:1.4rem;font-weight:600}.month-progress{background-color:#e5e7eb;border-radius:3px;flex-shrink:0;height:6px;overflow:hidden;width:100px}.month-progress__bar{background:#3b82f6;border-radius:3px;height:100%;transition:width .3s ease-out}.hero-daysLeft{background-color:#f0f9ff;border:1px solid #bfdbfe;border-radius:6px;color:#1e40af;flex-shrink:0;font-size:.95rem;font-weight:600;padding:8px 16px;white-space:nowrap}.hero-week-progress{align-items:center;border-top:1px solid #0000001a;display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;padding:12px 0}.week-progress-label{color:var(--c-text);font-size:.9rem;font-weight:600;white-space:nowrap}.week-progress-bars{color:var(--c-text);font-size:.9rem;font-weight:500;letter-spacing:2px}.kpi-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:24px}.kpi-card{background:#fff;border:1px solid var(--c-border);border-radius:8px;display:flex;flex-direction:column;justify-content:space-between;padding:24px;position:relative;transition:all .2s ease}.kpi-card:before{background:#3b82f6;border-radius:8px 8px 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.kpi-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px #00000012}.kpi-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:16px}.kpi-icon{align-items:center;display:flex;flex-shrink:0;font-size:28px}.kpi-info{display:flex;flex-direction:column;gap:2px}.kpi-label{color:var(--c-text);font-size:.9rem;font-weight:600;margin:0}.kpi-year{color:var(--c-text-light);font-size:.8rem;font-weight:400;margin:0;opacity:.8}.kpi-value{color:var(--c-text);font-size:1.35rem;font-weight:700;margin:0;word-break:break-word}.content-grid{grid-gap:24px;display:grid;gap:24px;grid-auto-rows:500px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.notice-card,.remain-card{display:flex;flex-direction:column;overflow:hidden}.remain-card .card-header{flex-shrink:0}.success-text{color:var(--c-success)}.danger-text{color:var(--c-danger)}.info-text{color:var(--c-info)}.danger-badge{color:var(--c-danger)}.info-badge{color:var(--c-info)}.notice-count{background:#dbeafe;color:#1e40af;padding:4px 12px}.count-badge,.notice-count{border-radius:20px;font-size:.8rem;font-weight:600;letter-spacing:0;white-space:nowrap}.count-badge{color:#fff;padding:6px 14px}.count-badge.danger{background:#fee2e2;color:#991b1b}.count-badge.info{background:#dbeafe;color:#1e40af}.notice-list-wrapper{flex:1 1;overflow-x:hidden;overflow-y:auto;padding-right:8px}.notice-list-wrapper::-webkit-scrollbar{width:6px}.notice-list-wrapper::-webkit-scrollbar-track{background:#f0fafb;border-radius:10px}.notice-list-wrapper::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:10px}.notice-list-wrapper::-webkit-scrollbar-thumb:hover{background:#9ca3af}.notice-item{border-bottom:1px solid #f3f4f6;padding:16px 0;transition:all .15s ease;word-break:break-word}.notice-item:hover{background-color:#f9fafb;border-left:2px solid #3b82f6;border-radius:4px;margin:0 -8px;padding:16px 8px}.notice-item:last-child{border-bottom:none}.notice-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}.notice-badge{background:#e0e7ff;color:#3730a3}.notice-badge,.notice-new-badge{border-radius:4px;font-size:.7rem;font-weight:600;letter-spacing:0;padding:2px 8px;text-transform:uppercase;white-space:nowrap}.notice-new-badge{background:#fee2e2;color:#991b1b}.notice-date{color:var(--c-text-light);font-size:.8rem;font-weight:500}.notice-title-text{color:var(--c-text);font-weight:600;line-height:1.4;margin-bottom:6px;word-break:break-word}.notice-details{border-left:2px solid #e5e7eb;color:var(--c-text-light);font-size:.85rem;line-height:1.5;margin:0;opacity:.85;padding-left:16px}.notice-details li{margin-bottom:4px;word-break:break-word}.unpaid-list{flex:1 1;overflow-x:hidden;overflow-y:auto;padding-right:8px}.unpaid-list::-webkit-scrollbar{width:6px}.unpaid-list::-webkit-scrollbar-track{background:#f9fafb;border-radius:10px}.unpaid-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:10px}.unpaid-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.empty-msg{color:#9ca3af;font-size:.9rem;font-weight:400;padding:30px 20px;text-align:center}.list-item{align-items:center;border-bottom:1px dashed #e5e7eb;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:14px 0;transition:all .15s ease;word-break:break-word}.list-item:hover{background-color:#f9fafb;border-radius:4px;margin:0 -8px;padding:14px 8px}.list-item:last-child{border-bottom:none}.list-info{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:150px}.list-title{color:var(--c-text);font-size:.95rem;font-weight:600;word-break:break-word}.list-sub{color:var(--c-text-light);font-size:.8rem;opacity:.85;word-break:break-word}.list-amount{color:var(--c-text);font-size:.95rem;font-weight:700;white-space:nowrap}.home-footer{border-top:1px solid var(--c-border);color:var(--c-text-light);font-size:.85rem;font-weight:400;margin-top:40px;padding:20px;text-align:center}.home-footer .badge{background:#e0e7ff;border-radius:4px;color:#3730a3;display:inline-block;font-weight:600;letter-spacing:0;padding:4px 12px}.footer-divider{margin:0 8px;opacity:.3}@media (max-width:1024px){.hero-header,.hero-stats{gap:16px}.content-grid{grid-auto-rows:500px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}@media (max-width:768px){.card,.home-root{padding:16px}.card-hero{padding:20px}.hero-header{align-items:flex-start;flex-direction:column;gap:16px}.hero-date-section{width:100%}.hero-stats{flex-direction:row;width:100%}.month-progress{flex:1 1}.kpi-grid{gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.content-grid{gap:16px;grid-auto-rows:450px;grid-template-columns:1fr}.card-title{font-size:1rem}.kpi-value{font-size:1.2rem}.hero-date-title{font-size:1.1rem}.hero-stat-value{font-size:1.2rem}.hero-week-progress{font-size:.8rem}.week-progress-bars{font-size:.8rem;letter-spacing:1px}}@media (max-width:480px){.card,.home-root{padding:12px}.card{border-radius:6px}.card-hero{padding:16px}.hero-emoji{font-size:28px}.hero-date-title{font-size:1rem}.hero-stat-value{font-size:1.1rem}.kpi-grid{gap:12px;grid-template-columns:1fr}.kpi-value{font-size:1.1rem}.content-grid{gap:12px;grid-auto-rows:400px}.card-header{margin-bottom:12px;padding-bottom:8px}.list-item{padding:10px 0}.notice-item{padding:12px 0}.hero-week-progress{font-size:.7rem}.week-progress-bars{font-size:.7rem;letter-spacing:.5px}}body{background-color:#f8fafc;color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5}.github-login-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:24px}.github-logo{margin-bottom:24px}.logo-content{align-items:center;display:flex;flex-direction:column;gap:4px}.logo-emoji{font-size:48px;margin-bottom:8px}.logo-text{color:#0f172a;font-size:22px;font-weight:800;letter-spacing:-.5px}.logo-sub{color:#64748b;font-size:13px;font-weight:400}.github-login-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-width:400px;padding:32px;position:relative;width:100%}.github-login-card:before{display:none}.github-heading{color:#1e293b;font-size:18px;font-weight:600;margin-bottom:24px;text-align:left}.form-group{margin-bottom:20px}.form-group label{color:#475569;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.password-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.input-wrapper{position:relative}.input-icon{color:#94a3b8;left:12px;position:absolute;top:50%;transform:translateY(-50%);z-index:2}.github-input{background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;font-size:14px;padding:10px 12px 10px 38px;transition:all .2s ease;width:100%}.github-input::placeholder{color:#94a3b8}.github-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.github-input.input-error{background-color:#fef2f2;border-color:#ef4444}.toggle-password{background:none;border:none;color:#64748b;cursor:pointer;font-size:12px;font-weight:500;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.toggle-password:hover{color:#3b82f6}.github-button{align-items:center;background-color:#1e293b;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;margin-top:8px;padding:12px;transition:background-color .2s;width:100%}.github-button:hover:not(:disabled){background-color:#0f172a}.github-button:active:not(:disabled){transform:scale(.98)}.github-button:disabled{background-color:#94a3b8;cursor:not-allowed}.github-signup{color:#64748b;font-size:13px;margin-top:24px}.forgot-password,.github-signup a{color:#2563eb;font-weight:500;text-decoration:none}.forgot-password:hover,.github-signup a:hover{text-decoration:underline}.login-divider{background-color:#e2e8f0;height:1px;margin:24px 0}.login-info{color:#94a3b8;font-size:12px}@keyframes spin{to{transform:rotate(1turn)}}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}:root{--primary-color:#2563eb;--primary-light:#3b82f6;--primary-dark:#1e40af;--success-color:#059669;--success-light:#d1fae5;--success-hover:#047857;--danger-color:#dc2626;--danger-light:#fee2e2;--danger-hover:#b91c1c;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-500:#6b7280;--border-light:#00000014;--border-dark:#00000026}.MuiButton-root{border:1px solid #00000026!important;border:1px solid var(--border-dark)!important;border-radius:6px!important;box-shadow:none!important;font-weight:500!important;line-height:20px!important;min-width:auto!important;padding:4px 12px!important;text-transform:none!important;transition:all .2s ease!important}.MuiButton-root:hover{box-shadow:0 2px 8px #00000014!important;transform:translateY(-1px)!important}.MuiButton-root:active{transform:translateY(0)!important}.MuiButton-root.MuiButton-containedSuccess{background-color:#059669!important;background-color:var(--success-color)!important;border-color:#059669!important;border-color:var(--success-color)!important;color:#fff!important}.MuiButton-root.MuiButton-containedSuccess:hover{background-color:#047857!important;background-color:var(--success-hover)!important;border-color:#047857!important;border-color:var(--success-hover)!important;box-shadow:0 4px 12px #05966933!important}.MuiButton-root.MuiButton-containedPrimary{background-color:#2563eb!important;background-color:var(--primary-color)!important;border-color:#2563eb!important;border-color:var(--primary-color)!important;color:#fff!important}.MuiButton-root.MuiButton-containedPrimary:hover{background-color:#1e40af!important;background-color:var(--primary-dark)!important;border-color:#1e40af!important;border-color:var(--primary-dark)!important;box-shadow:0 4px 12px #2563eb33!important}.MuiButton-root.MuiButton-containedError{background-color:#dc2626!important;background-color:var(--danger-color)!important;border-color:#dc2626!important;border-color:var(--danger-color)!important;color:#fff!important}.MuiButton-root.MuiButton-containedError:hover{background-color:#b91c1c!important;background-color:var(--danger-hover)!important;border-color:#b91c1c!important;border-color:var(--danger-hover)!important;box-shadow:0 4px 12px #dc262633!important}.MuiDataGrid-row.new-row-highlight{animation:slideIn .3s ease-out;background-color:#eff6ff!important;border-left:5px solid #2563eb!important;border-left:5px solid var(--primary-color)!important}.MuiDataGrid-row:hover{background-color:#f9fafb!important;background-color:var(--gray-50)!important;cursor:pointer}.MuiDataGrid-row.new-row-highlight:hover{background-color:#dbeafe!important}.required-header-field{align-items:center;display:flex}.required-header-field .MuiDataGrid-columnHeaderTitleContainer:after{color:#dc2626;color:var(--danger-color);content:"*";font-weight:700;margin-left:4px;opacity:1!important}.MuiDataGrid-root{background-color:#fff!important}.MuiDataGrid-columnHeader,.MuiDataGrid-root{border-color:#e5e7eb!important;border-color:var(--gray-200)!important}.MuiDataGrid-columnHeader{background-color:#f3f4f6!important;background-color:var(--gray-100)!important;border-right:1px solid #e5e7eb!important;border-right:1px solid var(--gray-200)!important}.MuiDataGrid-columnHeader:hover{background-color:#e5e7eb!important;background-color:var(--gray-200)!important}.MuiDataGrid-columnHeaderTitle{color:#1f2937!important;font-weight:700!important}.MuiDataGrid-cell{border-color:#e5e7eb!important;border-color:var(--gray-200)!important;border-right:1px solid #e5e7eb!important;border-right:1px solid var(--gray-200)!important;color:#1f2937!important}.MuiDataGrid-cell:focus-within{box-shadow:inset 0 0 0 2px #2563eb!important;box-shadow:inset 0 0 0 2px var(--primary-color)!important;outline:none!important}.MuiDataGrid-editInputBase{border-color:#00000026!important;border-color:var(--border-dark)!important}.MuiDataGrid-editInputBase:focus{border-color:#2563eb!important;border-color:var(--primary-color)!important;box-shadow:0 0 0 3px #2563eb1a!important}.MuiCheckbox-root,.MuiCheckbox-root.Mui-checked{color:#2563eb!important;color:var(--primary-color)!important}.MuiDataGrid-footerContainer{background-color:#f9fafb!important;background-color:var(--gray-50)!important;border-color:#e5e7eb!important;border-color:var(--gray-200)!important;color:#6b7280!important;color:var(--gray-500)!important}@keyframes slideIn{0%{opacity:0;transform:translateX(-4px)}to{opacity:1;transform:translateX(0)}}
/*# sourceMappingURL=main.7bb679ae.css.map*/