:root{color:#18221f;font-synthesis:none;text-rendering:optimizelegibility;background:#f3f6f5;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}.login-page{background:#f4f7f6;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:100vh;display:grid}.login-brand{color:#fff;background:#0d4d3b;align-items:flex-start;gap:18px;min-height:100vh;padding:clamp(42px,7vw,92px);display:flex;position:relative;overflow:hidden}.login-brand:after{content:"";opacity:.13;background-image:linear-gradient(#fff6 1px,#0000 1px),linear-gradient(90deg,#fff6 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 75%);mask-image:linear-gradient(#000,#0000 75%)}.brand-mark{z-index:1;background:#ffffff1f;border:1px solid #ffffff3d;flex:none;place-items:center;width:52px;height:52px;font-size:25px;display:grid;position:relative}.login-brand>div:nth-child(2){z-index:1;position:relative}.brand-product{color:#ffffffb8;margin-bottom:18px;font-size:15px;font-weight:600;display:block}.login-brand h1.ant-typography{color:#fff;letter-spacing:0;margin:0 0 14px;font-size:clamp(36px,5vw,64px);line-height:1.12}.login-brand div.ant-typography{color:#ffffffad;margin:0;font-size:16px}.signal-visual{z-index:1;aspect-ratio:1;width:min(34vw,430px);position:absolute;bottom:clamp(28px,8vh,96px);right:clamp(20px,6vw,90px)}.signal-ring,.signal-core{border:1px solid #ffffff38;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.signal-ring-one{width:100%;height:100%}.signal-ring-two{width:70%;height:70%}.signal-ring-three{width:40%;height:40%}.signal-core{color:#123d32;background:#f4c56b;border-color:#ffffff57;place-items:center;width:82px;height:82px;font-size:36px;display:grid;box-shadow:0 22px 60px #0003}.login-panel{place-self:center;width:min(100%,520px);padding:48px clamp(30px,5vw,64px)}.login-panel-heading{align-items:flex-start;gap:14px;margin-bottom:36px;display:flex}.login-panel-heading>.anticon{color:#116149;margin-top:5px;font-size:24px}.login-panel-heading h2.ant-typography{letter-spacing:0;margin:0 0 5px;font-size:28px}.login-panel .ant-form-item{margin-bottom:22px}.login-panel .ant-form-item-label>label{font-weight:600}.login-panel .ant-input-affix-wrapper{box-shadow:none;border-color:#d6dfdc}.login-panel .ant-btn-primary{box-shadow:none;margin-top:8px;font-weight:600}.workspace-shell{background:#f3f6f5;min-height:100vh}.workspace-sider{z-index:20;border-right:1px solid #e5ebe9;height:100vh;top:0;position:sticky!important}.workspace-sider .ant-layout-sider-children{flex-direction:column;display:flex}.workspace-mask{display:none}.workspace-header{background:#fff;border-bottom:1px solid #e5ebe9;justify-content:space-between;align-items:center;height:64px;padding:0 28px;line-height:normal;display:flex}.workspace-brand{border-bottom:1px solid #eef2f1;align-items:center;gap:11px;min-width:0;height:64px;padding:0 20px;display:flex;overflow:hidden}.workspace-brand>div{white-space:nowrap;gap:1px;min-width:0;display:grid}.workspace-brand>div .ant-typography:first-child{font-size:14px}.workspace-brand>div .ant-typography:last-child{font-size:12px}.workspace-logo{color:#fff;background:#116149;flex:none;place-items:center;width:32px;height:32px;font-size:17px;display:grid}.workspace-menu{padding:16px 10px;border-inline-end:0!important}.workspace-menu .ant-menu-item{width:100%;margin-inline:0;font-weight:600}.workspace-content{min-width:0;min-height:calc(100vh - 64px);padding:28px}.management-page{width:100%;max-width:1500px;margin:0 auto}.page-heading{justify-content:space-between;align-items:flex-start;gap:24px;min-height:62px;margin-bottom:22px;display:flex}.page-heading h2.ant-typography{margin:0;font-size:25px}.page-subtitle.ant-typography{margin:5px 0 0 30px}.page-heading-icon{color:#116149;font-size:20px}.filter-card,.table-card{border:1px solid #e5ebe9;box-shadow:0 8px 28px #1143340a}.account-page{max-width:860px}.account-card{border:1px solid #e5ebe9;box-shadow:0 8px 28px #1143340a}.account-card .ant-card-head-title{font-size:17px}.account-card .ant-form{max-width:520px}.filter-card{margin-bottom:18px}.filter-card .ant-card-body{padding:18px}.agent-filters{grid-template-columns:minmax(260px,420px) 150px auto;align-items:center;gap:12px;display:grid}.merchant-filters{grid-template-columns:minmax(240px,1fr) minmax(210px,300px) 140px auto;align-items:center;gap:12px;display:grid}.qrcode-filters{grid-template-columns:minmax(230px,1fr) minmax(190px,250px) minmax(190px,250px) 140px auto;align-items:center;gap:12px;display:grid}.advertisement-filters{grid-template-columns:minmax(260px,440px) 150px auto;align-items:center;gap:12px;display:grid}.table-card .ant-card-body{padding:0}.table-card-heading{border-bottom:1px solid #edf1ef;justify-content:space-between;align-items:center;gap:16px;min-height:77px;padding:18px 20px;display:flex}.table-card-heading h4.ant-typography{margin:0 0 2px;font-size:17px}.table-card .ant-table-wrapper .ant-table-container{border-radius:0}.table-card .ant-table-thead>tr>th{color:#4a5b55;font-size:13px;font-weight:600}.table-card .ant-pagination{margin:18px 20px}.entity-mobile-cell{gap:3px;display:grid}.entity-mobile-cell>.ant-typography-secondary{text-overflow:ellipsis;max-width:165px;overflow:hidden}.entity-mobile-cell .ant-tag{margin-inline-end:0}.entity-mobile-cell .entity-owner{font-size:12px}.qrcode-token-cell,.qrcode-mobile-cell{align-items:center;gap:12px;display:flex}.qrcode-thumbnail-button{cursor:pointer;background:#fff;border:1px solid #e2e9e6;flex:none;padding:3px}.qrcode-thumbnail-button:hover,.qrcode-thumbnail-button:focus-visible{border-color:#116149}.qrcode-token.ant-typography{min-width:0;max-width:255px;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.qrcode-wifi-cell,.qrcode-mobile-details{gap:3px;min-width:0;display:grid}.qrcode-mobile-details{flex:1}.qrcode-mobile-details .qrcode-token.ant-typography{max-width:145px}.qrcode-mobile-details .ant-typography-secondary{text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:12px;overflow:hidden}.qrcode-mobile-details .ant-tag{width:fit-content;margin-inline-end:0}.qrcode-result-tokens textarea,.qrcode-result-tokens.ant-input{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.qrcode-preview{flex-direction:column;align-items:center;gap:14px;display:flex}.qrcode-preview-token.ant-typography{overflow-wrap:anywhere;max-width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.qrcode-preview>.ant-typography-secondary{text-align:center;margin:-4px 0 2px}.qrcode-preview .ant-descriptions{width:100%}.advertisement-code.ant-typography{min-width:0;max-width:100%;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.advertisement-mobile-cell{gap:4px;min-width:0;display:grid}.advertisement-mobile-cell>.ant-typography-secondary{max-width:190px}.advertisement-mobile-cell .ant-tag{width:fit-content;margin-inline-end:0}.dashboard-heading-actions{align-items:center;gap:14px;display:flex}.dashboard-refresh-alert{margin-bottom:18px}.dashboard-error-card,.dashboard-metric-card,.dashboard-panel-card{border:1px solid #e5ebe9;box-shadow:0 8px 28px #1143340a}.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px;display:grid}.dashboard-metric-card{--metric-color:#116149;min-width:0;overflow:hidden}.dashboard-metric-card .ant-card-body{padding:20px}.dashboard-metric-agents{--metric-color:#116149}.dashboard-metric-merchants{--metric-color:#337a86}.dashboard-metric-qrcodes{--metric-color:#895b17}.dashboard-metric-advertise{--metric-color:#7d629e}.dashboard-metric-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-metric-icon{background:color-mix(in srgb, var(--metric-color) 11%, white);width:38px;height:38px;color:var(--metric-color);border-radius:50%;flex:none;place-items:center;font-size:18px;display:grid}.dashboard-metric-card .ant-statistic{margin:9px 0 5px}.dashboard-metric-card .ant-statistic-content{color:#18221f;letter-spacing:-.02em;font-size:32px;font-weight:650}.dashboard-metric-summary{justify-content:space-between;gap:8px;min-height:22px;font-size:12px;display:flex}.dashboard-metric-card .ant-progress{margin:5px 0 0}.dashboard-metric-rate{color:var(--metric-color);margin-top:2px;font-size:12px;font-weight:600;display:block}.dashboard-detail-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:18px;display:grid}.dashboard-panel-card .ant-card-head{border-bottom-color:#edf1ef;min-height:58px}.dashboard-panel-card .ant-card-head-title{font-size:17px}.dashboard-status-list{gap:20px;display:grid}.dashboard-status-row{--status-color:#116149;grid-template-columns:38px minmax(0,1fr) 48px;align-items:center;gap:12px;display:grid}.dashboard-status-merchants{--status-color:#337a86}.dashboard-status-qrcodes{--status-color:#895b17}.dashboard-status-advertise{--status-color:#7d629e}.dashboard-status-icon{background:color-mix(in srgb, var(--status-color) 10%, white);width:38px;height:38px;color:var(--status-color);border-radius:6px;place-items:center;font-size:17px;display:grid}.dashboard-status-content{min-width:0}.dashboard-status-heading{justify-content:space-between;gap:14px;margin-bottom:3px;display:flex}.dashboard-status-rate{color:var(--status-color);text-align:right;font-weight:650}.dashboard-quick-links{gap:10px;display:grid}.dashboard-quick-link{color:#18221f;text-align:left;cursor:pointer;background:#fff;border:1px solid #e5ebe9;border-radius:6px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;min-width:0;padding:13px;transition:border-color .2s,background .2s;display:grid}.dashboard-quick-link:hover,.dashboard-quick-link:focus-visible{outline-offset:2px;background:#f7faf9;border-color:#78a797;outline:2px solid #116149}.dashboard-quick-link>span:nth-child(2){gap:2px;min-width:0;display:grid}.dashboard-quick-link strong,.dashboard-quick-link small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-quick-link small{color:#72817c;font-size:12px}.dashboard-quick-icon{color:#116149;background:#edf6f2;border-radius:6px;place-items:center;width:36px;height:36px;font-size:16px;display:grid}@media (width<=1199px){.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-detail-grid{grid-template-columns:1fr}}.modal-tip{background:#f3f7f6;border-left:3px solid #78a797;padding:10px 12px;margin:-4px 0 18px!important}.entity-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;display:grid}.entity-form-wide{grid-column:1/-1}@media (width<=767px){.login-page{background:#fff;min-height:100svh;display:block}.login-brand{min-height:290px;padding:32px 24px}.login-brand h1.ant-typography{font-size:36px}.login-brand div.ant-typography{max-width:250px;font-size:14px}.signal-visual{width:270px;bottom:-82px;right:-70px}.brand-mark{width:44px;height:44px}.login-panel{width:100%;padding:34px 24px 48px}.login-panel-heading{margin-bottom:28px}.login-panel-heading h2.ant-typography{font-size:24px}.workspace-header{padding:0 16px}.workspace-section-title,.workspace-user{display:none}.workspace-sider{inset:0 auto 0 0;box-shadow:14px 0 42px #062a202e;position:fixed!important}.workspace-mask{z-index:15;background:#041c156b;border:0;padding:0;display:block;position:fixed;inset:0}.workspace-content{padding:20px 16px}.page-heading{align-items:center}.page-heading h2.ant-typography{font-size:22px}.page-subtitle.ant-typography,.dashboard-heading-actions>.ant-typography{display:none}.dashboard-metrics{grid-template-columns:1fr;gap:12px}.dashboard-metric-card .ant-card-body{padding:16px}.dashboard-metric-card .ant-statistic-content{font-size:28px}.dashboard-status-row{grid-template-columns:34px minmax(0,1fr) 42px;gap:9px}.dashboard-status-icon{width:34px;height:34px}.dashboard-status-heading{gap:0;display:grid}.dashboard-status-heading .ant-typography-secondary{font-size:12px}.agent-filters,.merchant-filters,.qrcode-filters,.advertisement-filters{grid-template-columns:1fr}.entity-form-grid{display:block}.table-card-heading{padding:16px}.table-card .ant-pagination{margin-inline:12px}}
