.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-card{width:100%;max-width:400px;box-shadow:0 4px 12px #00000026}.login-card .ant-card-head-title{text-align:center;font-size:24px;font-weight:700}.sales-calendar-container{padding:24px}.calendar-header{margin-bottom:24px}.calendar-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.calendar-grid-container{overflow:auto;max-height:calc(100vh - 300px);border:1px solid #f0f0f0;border-radius:4px}.calendar-grid{display:table;border-collapse:collapse;min-width:100%}.calendar-row{display:table-row}.calendar-cell{display:table-cell;border:1px solid #f0f0f0;padding:8px;text-align:center;vertical-align:middle;min-width:100px;height:60px}.calendar-header-row{position:sticky;top:0;z-index:10;background-color:#fafafa}.calendar-header-row .calendar-cell{font-weight:600;background-color:#fafafa}.calendar-corner-cell{position:sticky;left:0;z-index:20;background-color:#fafafa!important;font-weight:600}.calendar-date-cell{font-size:14px;line-height:1.4}.calendar-date-cell small{font-size:12px;color:#999}.calendar-product-cell{position:sticky;left:0;z-index:5;background-color:#fff;text-align:left;min-width:200px;max-width:250px;border-right:2px solid #e8e8e8}.product-name{font-weight:500;font-size:14px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-spec{font-size:12px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-data-cell{cursor:pointer;transition:all .2s;font-size:14px}.calendar-data-cell:hover{background-color:#f5f5f5;transform:scale(1.05)}.calendar-data-cell.status-has_data{background-color:#e6f7ff;color:#1890ff;font-weight:600}.calendar-data-cell.status-has_data:hover{background-color:#bae7ff}.calendar-data-cell .quantity{font-size:16px}.calendar-data-cell.status-no_schedule{background-color:#fafafa;color:#bfbfbf}.calendar-data-cell.status-no_schedule .no-data{font-size:12px}.calendar-data-cell.status-not_synced{background-color:#fff7e6;color:#fa8c16}.calendar-data-cell.status-not_synced .not-synced{font-size:12px}.calendar-data-cell.status-empty{background-color:#fff;cursor:default}.calendar-data-cell.status-empty:hover{background-color:#fff;transform:none}@media (max-width: 1200px){.calendar-cell{min-width:80px;padding:6px;font-size:12px}.calendar-product-cell{min-width:150px;max-width:180px}.product-name{font-size:13px}.product-spec{font-size:11px}}.calendar-grid-container::-webkit-scrollbar{width:8px;height:8px}.calendar-grid-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.calendar-grid-container::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.calendar-grid-container::-webkit-scrollbar-thumb:hover{background:#555}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100vh}.ant-table-wrapper{overflow-x:auto}.ant-table{min-width:600px}@media (max-width: 768px){.ant-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.ant-card{margin-bottom:16px}.ant-space{flex-wrap:wrap}.ant-statistic{text-align:center}.ant-form-item-label{padding-bottom:4px}.ant-modal{max-width:calc(100vw - 32px);margin:16px auto}.ant-modal-content,.ant-drawer-body{padding:16px}}@media (max-width: 480px){.ant-table{min-width:500px;font-size:12px}.ant-btn{font-size:13px;padding:4px 12px;height:32px}.ant-input,.ant-select-selector{font-size:14px}.ant-card-head-title{font-size:16px}.ant-card-body{padding:16px}}
