*{box-sizing:border-box}html,body,#root{background:#f5f7fb;min-height:100%;margin:0}body{color:#172033}.login-shell{background:linear-gradient(#ffffffb8,#f5f7fbf0),url(https://images.unsplash.com/photo-1521590832167-7bcbfaa6381f?auto=format&fit=crop&w=1800&q=80) 50%/cover;justify-content:center;align-items:center;min-height:100vh;padding:32px;display:flex}.login-card{border:1px solid #e2e8f0e6;width:420px;max-width:100%;box-shadow:0 18px 44px #0f172a24}.login-title{text-align:center;width:100%;margin-bottom:28px}.brand-mark,.brand-logo-frame{color:#fff;background:#2563eb;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 8px;font-size:24px;display:inline-flex}.brand-logo{object-fit:contain;width:30px;height:30px}.brand-mark.small,.brand-logo-frame.small{width:38px;height:38px;margin:0;font-size:18px}.brand-logo-frame.small .brand-logo{width:25px;height:25px}.app-shell{min-height:100vh}.side{z-index:20;color:#fff;padding:20px 14px;inset:0 auto 0 0;overflow-y:auto;background:linear-gradient(#0f172a 0%,#111827 100%)!important;position:fixed!important}.app-shell>.ant-layout{min-height:100vh;margin-left:244px}.side-brand{align-items:center;gap:12px;margin-bottom:24px;padding:0 4px;display:flex}.side-brand .ant-typography{color:#fff;line-height:1.35;display:block}.side-brand .ant-typography-secondary{font-size:12px;color:#94a3b8!important}.side-menu{background:0 0!important;border-inline-end:0!important}.side-menu .ant-menu-item{margin-bottom:4px;color:#cbd5e1;border-radius:10px;width:100%;height:48px;margin-inline:0}.side-menu .ant-menu-title-content{font-size:15px;font-weight:600}.side-menu .anticon{font-size:18px}.side-menu.ant-menu-dark .ant-menu-item-selected{color:#fff;box-shadow:inset 3px 0 #60a5fa;background:#2563eb38!important}.topbar{z-index:15;background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;min-height:68px;padding:10px 24px;display:flex;position:fixed;top:0;left:244px;right:0}.topbar>div:first-child{flex-direction:column;justify-content:center;gap:2px;min-width:0;display:flex}.topbar .ant-typography{margin:0!important}.topbar h4.ant-typography{white-space:nowrap;line-height:1.35}.content{min-width:0;padding:88px 24px 24px}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.page-head h3{margin:0 0 4px}.range-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.overview-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:16px;display:grid}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.data-gap,.renew-tip{margin-bottom:16px}.renew-native-select{color:#172033;background:#fff;border:1px solid #d9d9d9;border-radius:8px;outline:none;width:100%;height:40px;padding:0 11px;font-size:14px}.renew-native-select:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.filters{row-gap:12px;margin-bottom:16px}.store-management-panel,.feedback-page{flex-direction:column;gap:16px;display:flex}.store-management-head,.feedback-toolbar{justify-content:space-between;align-items:center;gap:16px;padding:2px 4px 6px;display:flex}.store-management-head h4{margin:2px 0 4px}.section-eyebrow{color:#2563eb;font-size:13px;font-weight:700}.clean-filters{margin-bottom:0;padding:2px 4px}.clean-filters .ant-form-item{margin-bottom:0}.clean-filters .ant-input-affix-wrapper,.clean-filters .ant-input,.clean-filters .ant-select-selector{min-height:38px;box-shadow:none!important;border-color:#dbe3ef!important}.section-surface{background:#fff;border:1px solid #e2e8f0b3;border-radius:12px;width:100%;min-width:0;overflow:hidden;box-shadow:0 14px 34px #0f172a0f}.store-table-surface .ant-table-wrapper,.feedback-surface .ant-table-wrapper,.section-surface .ant-table-wrapper{border-radius:12px;width:100%;min-width:0;overflow-x:auto}.section-surface .ant-spin-nested-loading,.section-surface .ant-spin-container,.section-surface .ant-table-container{min-width:0}.store-table .ant-table{font-size:14px}.store-table .ant-table-thead>tr>th,.feedback-table .ant-table-thead>tr>th{color:#334155;background:#f8fafc;font-size:14px;font-weight:700}.store-table .ant-table-tbody>tr>td,.feedback-table .ant-table-tbody>tr>td{color:#1e293b;font-size:14px}.feedback-toolbar{padding-top:0}.feedback-summary{color:#334155;max-width:420px;margin-bottom:0!important}.store-detail-body,.store-detail-body>.ant-space-item,.store-resource-tabs,.store-detail-body .ant-descriptions,.store-resource-tabs .ant-tabs-content-holder,.store-resource-tabs .ant-tabs-tabpane,.store-resource-table{width:100%;min-width:0}.feedback-detail{width:100%}.feedback-detail-block{flex-direction:column;gap:8px;width:100%;display:flex}.feedback-content-box{color:#1e293b;white-space:pre-wrap;background:#f8fafc;border-radius:10px;min-height:96px;padding:14px 16px;line-height:1.7}.feedback-image-list{flex-wrap:wrap;gap:10px;display:flex}.feedback-image-list img{object-fit:cover;background:#f1f5f9;border-radius:10px;width:96px;height:96px;display:block}.table-link{height:auto;padding:0;font-weight:600}.upload-icon{color:#2563eb;margin:0 0 8px;font-size:30px}.import-form{max-width:520px;margin-bottom:16px}.import-result{margin-top:16px}.import-result .ant-table{margin-top:14px}.modal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}@media (width<=980px){.side{display:none}.app-shell>.ant-layout{margin-left:0}.topbar{flex-direction:column;align-items:flex-start;gap:14px;height:auto;min-height:82px;padding:16px;left:0}.content{padding:16px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head,.range-row{flex-direction:column;align-items:stretch}.overview-grid,.chart-grid{grid-template-columns:1fr}}@media (width<=560px){.login-shell{padding:16px}.metric-grid{grid-template-columns:1fr}.filters .ant-form-item{width:100%;margin-inline-end:0}.filters .ant-input-affix-wrapper,.filters .ant-input,.filters .ant-select{width:100%!important}.modal-grid{grid-template-columns:1fr;gap:0}}
