.app{min-height:100vh}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:18px;color:var(--sr-text-secondary)}.container{max-width:1200px;margin:0 auto;padding:20px}.card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}*{margin:0;padding:0;box-sizing:border-box}:root{--sr-layout-list-max-width: 1280px;--sr-layout-form-max-width: 600px;--sr-primary: #2563EB;--sr-primary-hover: #1D4ED8;--sr-primary-light: #EFF6FF;--sr-primary-dark: #1E40AF;--sr-primary-border: #BFDBFE;--sr-success: #16A34A;--sr-success-bg: #DCFCE7;--sr-success-light: #22C55E;--sr-success-hover: #15803D;--sr-success-soft: #F0FDF4;--sr-warning: #F59E0B;--sr-warning-hover: #D97706;--sr-warning-bg: #FEF3C7;--sr-warning-border: #FDE68A;--sr-warning-soft: #FFFBEB;--sr-danger: #EF4444;--sr-danger-hover: #DC2626;--sr-danger-bg: #FEE2E2;--sr-danger-border: #FECACA;--sr-danger-soft: #FEF2F2;--sr-text: #0F172A;--sr-text-secondary: #475569;--sr-text-muted: #94A3B8;--sr-text-white: #FFFFFF;--sr-bg-page: #F8FAFC;--sr-bg: #FFFFFF;--sr-bg-soft: #F1F5F9;--sr-bg-soft-hover: #E2E8F0;--sr-border: #E2E8F0;--sr-border-dark: #CBD5E1;--sr-radius-sm: 6px;--sr-radius-md: 8px;--sr-radius-lg: 12px;--sr-radius-xl: 16px;--sr-font-xs: 12px;--sr-font-sm: 13px;--sr-font-base: 14px;--sr-font-lg: 16px;--sr-font-xl: 18px;--sr-font-2xl: 28px;--sr-space-1: 8px;--sr-space-2: 12px;--sr-space-3: 16px;--sr-space-4: 24px;--sr-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--sr-shadow-md: 0 2px 4px rgba(0, 0, 0, .06);--sr-shadow-lg: 0 4px 6px rgba(0, 0, 0, .07);--sr-shadow-xl: 0 8px 16px rgba(0, 0, 0, .08);--sr-focus-ring: 0 0 0 2px var(--sr-primary-light)}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--sr-bg-page);color:var(--sr-text);line-height:1.5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button,input,select,textarea{font:inherit}:where(button,[role=button],a,input,select,textarea):focus-visible{outline:none;box-shadow:var(--sr-focus-ring);border-radius:var(--sr-radius-sm)}.sr-page{min-height:100vh;background:var(--sr-bg-page)}.sr-page--center{display:flex;align-items:center;justify-content:center;padding:20px}.sr-container{max-width:1280px;margin:0 auto;padding:var(--sr-space-4)}@media (max-width: 1024px){.sr-container{padding:20px}}@media (max-width: 768px){.sr-container{padding:var(--sr-space-3)}}.sr-container--narrow{max-width:1200px}.sr-container--form{max-width:600px!important;margin:0 auto!important}.sr-pageHeader{margin-bottom:var(--sr-space-4);display:flex;justify-content:space-between;align-items:center}.sr-title{margin:0;font-size:var(--sr-font-2xl);font-weight:700;color:var(--sr-text);letter-spacing:-.02em}.sr-subtitle{margin:4px 0 0;font-size:var(--sr-font-base);color:var(--sr-text-secondary);line-height:1.6}.sr-card{background:var(--sr-bg);border:1px solid var(--sr-border);border-radius:var(--sr-radius-lg);box-shadow:var(--sr-shadow-sm)}.sr-card--padded{padding:24px}.sr-card--padded-lg{padding:32px}.sr-cardHeader{padding:20px var(--sr-space-4);border-bottom:1px solid var(--sr-border)}.sr-cardBody{padding:20px var(--sr-space-4)}.sr-sectionTitle{margin:0;font-size:17px;font-weight:600;color:var(--sr-text)}.sr-muted{color:var(--sr-text-secondary)}.sr-muted2{color:#9e9e9e}.sr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:var(--sr-radius-md);font-size:var(--sr-font-base);font-weight:500;border:1px solid transparent;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .05s;-webkit-user-select:none;user-select:none}.sr-btn:active{transform:translateY(1px)}.sr-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.sr-btn--primary{background:var(--sr-primary);color:var(--sr-text-white)}.sr-btn--primary:hover:not(:disabled){background:var(--sr-primary-hover)}.sr-btn--secondary{background:var(--sr-bg);border-color:var(--sr-border-dark);color:var(--sr-text-secondary)}.sr-btn--secondary:hover:not(:disabled){background:var(--sr-bg-soft)}.sr-btn--danger{background:var(--sr-danger);color:var(--sr-text-white)}.sr-btn--danger:hover:not(:disabled){background:var(--sr-danger-hover)}.sr-btn--warning{background:var(--sr-warning);color:var(--sr-text-white)}.sr-btn--warning:hover:not(:disabled){background:var(--sr-warning-hover)}.sr-header{background:var(--sr-bg);border-bottom:1px solid var(--sr-border);position:relative}.sr-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--sr-primary)}.sr-header__inner{max-width:1280px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;min-height:56px}.sr-header__left,.sr-header__right{display:flex;align-items:center;gap:16px}.sr-header__brand{font-size:18px;font-weight:700;color:var(--sr-text);letter-spacing:-.01em}.sr-header__user{font-size:13px;color:var(--sr-text-muted);font-weight:400}.sr-header__btn{padding:8px 12px;background:var(--sr-bg);color:var(--sr-text-secondary);border:1px solid var(--sr-border);border-radius:var(--sr-radius-sm);cursor:pointer;transition:all .2s;font-weight:500;font-size:var(--sr-font-sm)}.sr-header__btn:hover{background:var(--sr-bg-soft);border-color:var(--sr-border-dark);color:var(--sr-text)}.sr-header__btn--logout{padding:8px 16px;font-size:var(--sr-font-base)}@media (max-width: 768px){.sr-header__inner{padding:12px 16px}.sr-header__user{display:none}}.sr-breadcrumbs{margin-bottom:24px;display:flex;align-items:center;gap:8px;font-size:var(--sr-font-base);color:var(--sr-text-secondary)}.sr-breadcrumbs__crumb{display:flex;align-items:center;gap:8px}.sr-breadcrumbs__link{background:none;border:none;padding:0;cursor:pointer;color:var(--sr-primary);font-weight:500;transition:color .2s}.sr-breadcrumbs__link:hover{color:var(--sr-primary-hover)}.sr-breadcrumbs__current{font-weight:600;color:var(--sr-text)}.sr-breadcrumbs__sep{color:var(--sr-border-dark)}.sr-loadingPage{min-height:100vh;background:var(--sr-bg-page);display:flex;align-items:center;justify-content:center}.sr-loadingPage__inner{text-align:center}.sr-spinner{width:48px;height:48px;border:4px solid var(--sr-border);border-top:4px solid var(--sr-primary);border-radius:50%;animation:sr-spin 1s linear infinite;margin:0 auto 16px}.sr-toast{position:fixed;top:24px;right:24px;max-width:500px;z-index:10000;animation:sr-slideIn .3s ease-out}.sr-toast__inner{border-radius:var(--sr-radius-lg);padding:16px 20px;box-shadow:var(--sr-shadow-lg);display:flex;align-items:flex-start;gap:12px;border:1px solid transparent}.sr-toast__message{font-size:var(--sr-font-base);color:var(--sr-text);line-height:1.5}.sr-toast__close{background:none;border:none;color:var(--sr-text-secondary);cursor:pointer;font-size:18px;padding:0;line-height:1;margin-top:2px}.sr-toast--success .sr-toast__inner{background:var(--sr-success-bg);border-color:#a8dab5}.sr-toast--error .sr-toast__inner{background:var(--sr-danger-bg);border-color:#f9dedc}.sr-toast--warning .sr-toast__inner{background:var(--sr-warning-bg);border-color:#fce8b2}.sr-dashboard__kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sr-space-3);margin-bottom:var(--sr-space-4)}.sr-dashboard__main-grid{display:grid;grid-template-columns:2fr 1fr;gap:var(--sr-space-4)}.sr-dashboard__left-col{display:flex;flex-direction:column;gap:var(--sr-space-4)}.sr-dashboard__right-col{display:flex;flex-direction:column;gap:var(--sr-space-3)}@media (max-width: 1024px){.sr-dashboard__kpi-grid{grid-template-columns:repeat(2,1fr)}.sr-dashboard__main-grid{grid-template-columns:1fr}}@media (max-width: 768px){.sr-dashboard__kpi-grid{grid-template-columns:repeat(2,1fr);gap:var(--sr-space-2)}.sr-title{font-size:24px!important}.sr-pageHeader{margin-bottom:var(--sr-space-3)!important}.sr-dashboard__left-col,.sr-dashboard__right-col{gap:var(--sr-space-3)}}@media (max-width: 480px){.sr-dashboard__kpi-grid{grid-template-columns:1fr}}.sr-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--sr-overlay);display:flex;align-items:center;justify-content:center;z-index:2000}.sr-modal__content{background:var(--sr-bg);border-radius:var(--sr-radius-lg);padding:24px;max-width:480px;width:90%;box-shadow:var(--sr-shadow-xl)}.sr-modal__title{margin:0 0 12px;font-size:20px;font-weight:600;color:var(--sr-text);letter-spacing:-.02em}.sr-modal__body{margin:0 0 20px;font-size:var(--sr-font-base);color:var(--sr-text-secondary);line-height:1.6}.sr-modal__actions{display:flex;gap:12px;justify-content:flex-end}.sr-infoBanner{background:var(--sr-bg-soft);border:1px solid var(--sr-border);border-radius:var(--sr-radius-md);padding:14px 20px;margin-bottom:16px;position:relative;font-size:var(--sr-font-sm);color:var(--sr-text-secondary);line-height:1.6}.sr-infoBanner--warning{background:var(--sr-warning-bg);border-color:var(--sr-warning)}.sr-infoBanner__close{position:absolute;top:12px;right:12px;background:transparent;border:none;font-size:18px;cursor:pointer;color:var(--sr-text-secondary);padding:2px 6px;transition:color .2s}.sr-infoBanner__close:hover{color:var(--sr-text)}.sr-infoBanner__content{padding-right:32px}.sr-fixedFooter{position:fixed;bottom:0;left:0;right:0;background:var(--sr-bg);border-top:1px solid var(--sr-border);padding:16px 32px;box-shadow:0 -2px 8px #0000001a;z-index:1000}.sr-fixedFooter__inner{max-width:100%;display:flex;justify-content:space-between;align-items:center}.sr-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:12px;font-size:var(--sr-font-xs);font-weight:600;border:1px solid transparent}.sr-badge__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.sr-badge--success{background:var(--sr-success-soft);border-color:var(--sr-success-bg);color:var(--sr-success)}.sr-badge--warning{background:var(--sr-warning-soft);border-color:var(--sr-warning-border);color:var(--sr-warning)}.sr-badge--error{background:var(--sr-danger-soft);border-color:var(--sr-danger-bg);color:var(--sr-danger)}.sr-header--sticky{position:sticky;top:0;z-index:100}.sr-header--full .sr-header__inner{max-width:100%}.sr-excelTable{background:var(--sr-bg);border:1px solid #c0c0c0;overflow:hidden}.sr-excelTable__scroll{overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 280px)}.sr-excelTable table{width:100%;border-collapse:collapse;font-size:11px;font-family:Calibri,Arial,sans-serif}.sr-excelTable th,.sr-excelTable td{border:1px solid #c0c0c0}.sr-excelTable th{background:#f0f0f0;padding:4px 8px;font-weight:600;text-align:center;color:#000;position:sticky;top:0;z-index:10}.sr-excelTable__rowHeader{background:#f0f0f0;padding:4px 8px;font-weight:600;text-align:center;color:#000;position:sticky;left:0;z-index:5}.sr-excelTable__cell{padding:0;position:relative}.sr-excelTable__input{width:100%;height:20px;padding:2px 4px;border:none;background:transparent;font-size:11px;font-family:Calibri,Arial,sans-serif;outline:none;box-sizing:border-box}.sr-excelTable__input:focus{outline:2px solid #1a73e8}.sr-excelTable__input.has-error{outline:2px solid var(--sr-danger)}.sr-excelTable__value{padding:2px 4px;min-height:20px;line-height:16px;color:#000}.sr-excelTable__empty{padding:48px 24px;text-align:center;color:var(--sr-text-secondary)}.sr-reportEdit{min-height:100vh;background:var(--sr-bg-page);padding-bottom:80px}.sr-reportEdit__container{max-width:1600px;margin:0 auto;padding:24px}.sr-reportEdit__stationInfo{display:flex;flex-direction:column;gap:2px}.sr-reportEdit__stationName{font-size:var(--sr-font-lg);font-weight:600;color:var(--sr-text);letter-spacing:-.01em}.sr-reportEdit__shiftTime{font-size:var(--sr-font-xs);color:var(--sr-text-secondary)}.sr-btn{height:40px}@media (max-width: 768px){.sr-btn{height:44px}}.sr-shiftCard{display:flex;flex-direction:column;gap:var(--sr-space-3)}@media (max-width: 768px){.sr-shiftCard{padding:var(--sr-space-3)!important}}input::placeholder,textarea::placeholder{color:#cbd5e1;opacity:1}@keyframes sr-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes sr-slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}
