.layout{display:flex;flex-direction:column;height:100vh}.layout-header{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 24px;background:#fff;border-bottom:1px solid #e8e8e8;flex-shrink:0}.layout-title{font-size:18px;font-weight:600;color:#1a1a1a}.layout-nav{display:flex;gap:8px}.nav-link{padding:6px 16px;border-radius:4px;text-decoration:none;color:#595959;font-size:14px;transition:all .2s}.nav-link:hover{color:#1677ff;background:#f0f5ff}.nav-link.active{color:#fff;background:#1677ff}.layout-main{flex:1;padding:24px;overflow-y:auto;background:#f5f7fa}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f5f7fa;padding:16px}.login-card{width:100%;max-width:420px;background:#fff;border-radius:12px;padding:32px 24px;box-shadow:0 4px 12px #00000014}.login-title{font-size:22px;font-weight:600;text-align:center;margin-bottom:4px;color:#1f2d3d}.login-subtitle{font-size:14px;color:#7f8c8d;text-align:center;margin-bottom:24px}.login-form{display:flex;flex-direction:column;gap:16px}.btn-oauth{width:100%;padding:14px 0;font-size:16px;border-radius:8px;border:none;cursor:pointer;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px}.btn-wecom{background:#07c160;color:#fff}.btn-wecom:hover{opacity:.92}.role-nav-page{max-width:800px;margin:0 auto}.role-nav-title{text-align:center;font-size:24px;font-weight:600;color:#1a1a1a;margin-bottom:32px}.role-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.role-card{display:flex;flex-direction:column;padding:28px 24px;background:#fff;border-radius:10px;border:1px solid #e8e8e8;cursor:pointer;transition:all .2s}.role-card:hover{border-color:#1677ff;box-shadow:0 2px 12px #1677ff1a}.role-icon{font-size:36px;margin-bottom:12px}.role-name{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.role-desc{font-size:13px;color:#8c8c8c;line-height:1.6;flex:1}.role-enter-btn{margin-top:16px;height:36px;border:none;border-radius:6px;background:#1677ff;color:#fff;font-size:14px;cursor:pointer;width:100%}.role-enter-btn:hover{background:#4096ff}.onboard-page{max-width:900px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.mode-switch{display:flex;gap:4px;background:#f0f0f0;border-radius:6px;padding:2px}.mode-btn{height:32px;padding:0 20px;border:none;border-radius:4px;background:transparent;font-size:14px;color:#595959;cursor:pointer;transition:all .2s}.mode-btn.active{background:#fff;color:#1677ff;box-shadow:0 1px 4px #00000014}.scan-steps{display:flex;gap:8px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.step-item{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.step-number{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;background:#f0f0f0;color:#8c8c8c}.step-item.active .step-number{background:#1677ff;color:#fff}.step-item.completed .step-number{background:#52c41a;color:#fff}.step-info{text-align:center}.step-title{font-size:12px;color:#595959}.step-desc{font-size:11px;color:#8c8c8c}.step-navigation{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #f0f0f0;justify-content:flex-end}.form-item.full-width{grid-column:1 / -1}.pending-section{margin-top:24px;padding:24px;background:#fff;border-radius:10px;border:1px solid #e8e8e8}.section-title{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:16px}.pending-count{font-size:13px;color:#8c8c8c;margin-bottom:12px}.empty-state{padding:24px;text-align:center;color:#8c8c8c;font-size:14px}.pending-table{width:100%;border-collapse:collapse;margin-bottom:16px}.pending-table th,.pending-table td{padding:10px 12px;border-bottom:1px solid #f0f0f0;font-size:13px;text-align:left}.pending-table th{background:#fafafa;font-weight:600;color:#595959}.pending-table tr:hover{background:#f9f9f9}.pending-table tr.selected{background:#e6f7ff}.pending-table input[type=checkbox]{width:auto;height:auto;margin:0;cursor:pointer}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000073;z-index:1000}.modal-content{width:360px;padding:28px;background:#fff;border-radius:10px;text-align:center}.modal-title{font-size:16px;font-weight:500;color:#1a1a1a;margin-bottom:24px}.modal-body{font-size:14px;color:#595959;margin-bottom:20px}.modal-actions{display:flex;gap:12px;justify-content:center}.order-page{max-width:900px;margin:0 auto}.deadline-badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:13px;background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.deadline-badge.past{background:#fff2e8;color:#fa8c16;border-color:#ffbb96}.deadline-notice{margin-bottom:20px;padding:10px 16px;border-radius:6px;font-size:14px;background:#f6ffed;color:#389e0d;border:1px solid #b7eb8f}.deadline-notice.past{background:#fff2e8;color:#d46b08;border-color:#ffbb96}.form-card{background:#fff;border-radius:10px;padding:24px;border:1px solid #e8e8e8}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-item{margin-bottom:4px}.form-item label{display:block;font-size:14px;color:#595959;margin-bottom:6px}.form-item input{width:100%;height:40px;padding:0 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;outline:none}.form-item input:focus{border-color:#1677ff}.form-item.checkbox-all label{display:flex;align-items:center;gap:8px;cursor:pointer}.form-item.checkbox-all input[type=checkbox]{width:auto;height:auto;margin:0}.batch-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.batch-count{font-size:13px;color:#8c8c8c;margin-bottom:12px}.product-options{display:flex;gap:8px}.product-btn{height:36px;padding:0 24px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;font-size:14px;cursor:pointer;transition:all .2s}.product-btn.active{border-color:#1677ff;color:#1677ff;background:#f0f5ff}.transfer-section{margin-top:24px;padding:20px;background:#fafafa;border-radius:8px}.transfer-label{display:block;font-size:14px;color:#595959;margin-bottom:10px}.transfer-options{display:flex;gap:12px;margin-bottom:10px}.transfer-btn{height:36px;padding:0 28px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;font-size:14px;cursor:pointer;transition:all .2s}.transfer-btn.active{border-color:#1677ff;color:#1677ff;background:#f0f5ff}.transfer-desc{font-size:13px;color:#8c8c8c;line-height:1.6}.summary-section{margin-top:24px}.summary-table{width:100%;border-collapse:collapse;margin-bottom:12px}.summary-table th,.summary-table td{padding:8px 10px;border-bottom:1px solid #f0f0f0;font-size:12px;text-align:left}.summary-table th{background:#fafafa;font-weight:600;color:#595959}.summary-table tr:hover{background:#f9f9f9}.summary-count{font-size:13px;color:#8c8c8c}.result-box{margin-top:16px;padding:12px 16px;border-radius:6px;font-size:14px}.result-box.today{background:#f6ffed;color:#389e0d;border:1px solid #b7eb8f}.result-box.next-day{background:#fff2e8;color:#d46b08;border:1px solid #ffbb96}.message-box{margin-top:16px;padding:10px 16px;border-radius:6px;font-size:14px}.message-box.success{background:#f6ffed;color:#389e0d;border:1px solid #b7eb8f}.message-box.error{background:#fff2e8;color:#d46b08;border:1px solid #ffbb96}.form-actions{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #f0f0f0}.btn-primary{height:36px;padding:0 24px;border:none;border-radius:6px;background:#1677ff;color:#fff;font-size:14px;cursor:pointer}.btn-primary:hover{background:#4096ff}.btn-primary.disabled{background:#d9d9d9;cursor:not-allowed}.btn-default{height:36px;padding:0 24px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;color:#595959;font-size:14px;cursor:pointer}.btn-default:hover{border-color:#1677ff;color:#1677ff}.btn-default.disabled{opacity:.5;cursor:not-allowed}.social-security-page,.signing-page,.pending-list-page,.daily-wage-page{max-width:900px;margin:0 auto}.signing-page{max-width:900px;margin:0 auto}.form-input,.form-select{padding:8px 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px}.form-input:focus,.form-select:focus{border-color:#1890ff;outline:none}.pending-list-page{max-width:900px;margin:0 auto}.pending-summary{color:#666;margin-bottom:12px;font-size:14px}.pending-table-wrapper{overflow-x:auto}.pending-table{width:100%;border-collapse:collapse}.pending-table th,.pending-table td{border:1px solid #e8e8e8;padding:8px 12px;text-align:left;font-size:13px}.pending-table th{background:#fafafa;font-weight:600}.btn-primary,.btn-default{padding:6px 14px;border-radius:4px;cursor:pointer;font-size:13px}.btn-primary{background:#1890ff;color:#fff;border:none;margin-right:6px}.btn-default{background:#fff;border:1px solid #d9d9d9}.empty-state{text-align:center;color:#999;padding:24px}.daily-wage-page{max-width:900px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.page-title{font-size:20px;font-weight:600;color:#1a1a1a}.form-card{background:#fff;border:1px solid #e8e8e8;border-radius:6px;padding:20px;margin-bottom:16px}.section-title{font-size:16px;font-weight:600;margin:16px 0 12px;color:#333}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.form-item{display:flex;flex-direction:column}.form-item label{font-size:13px;color:#666;margin-bottom:4px}.form-input{padding:8px 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px;width:100%}.form-input:focus{border-color:#1890ff;outline:none}.form-actions{display:flex;gap:12px;margin-top:16px}.btn-primary{padding:8px 20px;background:#1890ff;color:#fff;border:none;border-radius:4px;cursor:pointer}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-default{padding:8px 16px;background:#fff;border:1px solid #d9d9d9;border-radius:4px;cursor:pointer}.message-box{padding:10px 14px;border-radius:4px;margin-top:12px;font-size:14px}.message-box.success{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.message-box.error{background:#fff2e8;color:#ff4d4f;border:1px solid #ffccc7}.result-box{padding:14px;background:#fafafa;border:1px solid #e8e8e8;border-radius:4px;margin-top:12px}.detail-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.detail-row .form-input{flex:1}:root{--font-sans: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "PingFang SC", "Noto Sans CJK SC";--color-primary: #3370ff;--color-bg: #f5f7fa;--color-card: #fff;--radius-md: 12px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.mobile-container{display:flex;flex-direction:column;min-height:100vh;max-width:480px;margin:0 auto;background:var(--color-bg)}.page{padding:16px}.card{background:var(--color-card);border-radius:var(--radius-md);padding:16px;box-shadow:0 2px 8px #0000000f;margin-bottom:16px}.btn{padding:12px 16px;border-radius:8px;border:none;font-size:16px;cursor:pointer}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 480px){.grid-2{grid-template-columns:1fr}}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}
