html,body,#root{width:100%;height:100%;margin:0}body{background:#111315;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-layout{background:#111315;min-height:100vh}.admin-brand{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:10px;display:flex}.admin-logo-icon{object-fit:contain;background:0 0;flex:none;width:34px;height:24px}.admin-brand-text{letter-spacing:.01em;white-space:nowrap;font-size:14px;font-weight:700}.admin-header{z-index:20;background:#161616;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:24px;height:56px;padding:0 28px;line-height:1;display:flex;position:sticky;top:0}.admin-nav{flex:auto;min-width:0;background:0 0!important;border-bottom:0!important}.admin-nav.ant-menu-horizontal:after{display:none}.admin-nav.ant-menu-horizontal>.ant-menu-item,.admin-nav.ant-menu-horizontal>.ant-menu-submenu{color:#ffffffb8;height:56px;padding-inline:16px;font-size:14px;line-height:56px;top:0}.admin-nav.ant-menu-dark.ant-menu-horizontal>.ant-menu-item-selected,.admin-nav.ant-menu-dark.ant-menu-horizontal>.ant-menu-item-active,.admin-nav.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu-selected,.admin-nav.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu-active{color:#fff!important;background:0 0!important}.admin-nav.ant-menu-dark.ant-menu-horizontal>.ant-menu-item-selected:after,.admin-nav.ant-menu-dark.ant-menu-horizontal>.ant-menu-item:hover:after{border-bottom-color:#fff!important}.admin-user{color:#fff;flex:none;align-items:center;gap:8px;display:flex}.admin-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.admin-logout-btn.ant-btn-text{color:#ffffffc7}.admin-logout-btn.ant-btn-text:hover{color:#fff!important;background:#ffffff1a!important}.admin-content{background:#111315;min-height:calc(100vh - 56px);padding:20px 24px 24px}.admin-content .ant-card{box-shadow:none;border:1px solid #ffffff14}.admin-content .ant-card .ant-statistic{color:#f5f5f5}.admin-content .ant-card .ant-statistic-title{color:#ffffffb8}.admin-content .ant-card .ant-statistic-content{color:#fff}.admin-content .ant-table-wrapper,.admin-content .ant-table-container,.admin-content .ant-table{background:#181b1d}.admin-content .ant-table-container{border:1px solid #ffffff14;border-radius:12px;overflow:hidden}.admin-content .ant-table-thead>tr>th{color:#f5f5f5!important;background:#1b1f22!important;border-bottom-color:#ffffff14!important}.admin-content .ant-table-tbody>tr>td{background:#181b1d;border-bottom-color:#ffffff0f!important}.admin-content .ant-table-tbody>tr.ant-table-row:hover>td,.admin-content .ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#202428!important}.admin-content .ant-table-title{background:#181b1d;border:1px solid #ffffff14;border-bottom:0;border-radius:12px 12px 0 0}.admin-content .ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.admin-content .ant-btn-primary{box-shadow:none}.admin-content .ant-btn-default,.admin-content .ant-btn-link,.admin-content .ant-input,.admin-content .ant-input-affix-wrapper,.admin-content .ant-select-selector,.admin-content .ant-picker,.admin-content .ant-input-number,.admin-content .ant-input-number-affix-wrapper{border-color:#ffffff1a}.admin-content .ant-modal-content,.admin-content .ant-modal-header{border:1px solid #ffffff14}.section-title{color:#f5f5f5}.stat-row{margin-bottom:12px}.section-title{margin:12px 0 0;line-height:32px;display:block}.subscribe-page .page-table-toolbar.ant-table-wrapper{margin-top:8px}.text-green{color:#16a34a}.text-red{color:#dc2626}.text-gray{color:#6b7280}.text-blue{color:#2563eb}.status-dot{vertical-align:middle;border-radius:50%;width:9px;height:9px;display:inline-block}.status-dot-on{background:#22c55e;box-shadow:0 0 0 3px #22c55e29}.status-dot-off{background:#ef4444;box-shadow:0 0 0 3px #ef444429}.run-status-pill{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.run-status-dot{border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #ffffff12}.account-task-picker-hint{color:#0000008c;margin:0 0 12px;font-size:13px;line-height:1.5}.export-option{text-align:center;margin-top:16px}.danger-hint{color:#ef4444;margin:0 0 12px;font-weight:600}.batch-machine-list{background:#ffffff0f;border:1px solid #ffffff14;border-radius:6px;max-height:min(42vh,320px);padding:8px 12px;overflow:auto}.batch-machine-name{color:#ffffffe0;line-height:1.8}.login-page{color:#f5f5f5;background:linear-gradient(135deg,#0f1214 0%,#151b20 48%,#101312 100%);width:100%;height:100dvh;min-height:640px;position:relative;overflow:hidden}.login-page:before{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:48px 48px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:fixed;inset:0;-webkit-mask-image:linear-gradient(135deg,#000000b3,#0000 72%);mask-image:linear-gradient(135deg,#000000b3,#0000 72%)}.login-shell{z-index:1;box-sizing:border-box;grid-template-columns:minmax(0,520px) 380px;justify-content:center;align-items:center;gap:48px;width:min(1060px,100% - 64px);height:100%;min-height:0;margin:0 auto;padding:clamp(28px,6vh,52px) 0 clamp(72px,13vh,120px);display:grid;position:relative}.login-brand-panel{flex-direction:column;align-items:flex-start;display:flex}.login-brand-logo{object-fit:contain;width:232px;max-width:100%;height:auto;margin-bottom:24px}.login-brand-title{color:#fff!important;letter-spacing:0!important;margin:0 0 10px!important;font-size:44px!important;line-height:1.12!important}.login-brand-subtitle{color:#ffffffad;font-size:16px}.login-brand-status{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(520px,100%);margin-top:34px;display:grid}.login-status-row{color:#ffffffc7;white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:0 14px;display:inline-flex}.login-status-row span{background:#4ecb63;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #4ecb6329}.login-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#16191beb;border:1px solid #ffffff1a;border-radius:10px;width:100%;padding:32px;box-shadow:0 24px 70px #00000061}.login-logo{object-fit:contain;width:196px;max-width:100%;height:auto;margin:0 auto 18px;display:block}.login-panel-header{margin-bottom:28px}.login-title{text-align:left;color:#fff!important;margin:0 0 8px!important}.login-subtitle{color:#ffffff9e}.login-form .ant-form-item{margin-bottom:18px}.login-page .ant-input-affix-wrapper,.login-page .ant-input{border-radius:6px;color:#fff!important;background:#ffffff0f!important;border-color:#ffffff1f!important}.login-page .ant-input-affix-wrapper:hover,.login-page .ant-input:hover{border-color:#4ecb639e!important}.login-page .ant-input-affix-wrapper-focused,.login-page .ant-input:focus{border-color:#4ecb63!important;box-shadow:0 0 0 2px #4ecb6324!important}.login-page .ant-input-affix-wrapper .ant-input{box-shadow:none!important;background:0 0!important;border:0!important}.login-page .ant-input::placeholder{color:#fff6}.login-page .anticon{color:#ffffff8f}.login-page .ant-input-password-icon{color:#ffffff8f!important}.login-page .ant-btn-primary{color:#0b100d;height:44px;box-shadow:none;background:#4ecb63;border-color:#4ecb63;font-weight:600}.login-page .ant-btn-primary:hover,.login-page .ant-btn-primary:focus{color:#071009!important;background:#68df79!important;border-color:#68df79!important}.login-action{color:#ffffffad;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-top:22px;padding-top:18px;display:flex}.login-action a{float:none;color:#6ee781;cursor:pointer;font-weight:600}.login-action-links{align-items:center;gap:14px;display:inline-flex}.login-link-button{color:#6ee781;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;line-height:1}.login-action a:hover,.login-action a:focus,.login-link-button:hover,.login-link-button:focus{color:#90f59d}.contact-modal .ant-modal-content{background:#181c1ffa;border:1px solid #ffffff1a;border-radius:10px}.contact-modal .ant-modal-header{background:0 0}.contact-modal .ant-modal-title,.contact-modal .ant-modal-close{color:#fff}.contact-qr{flex-direction:column;align-items:center;gap:12px;padding:10px 0 4px;display:flex}.contact-qr .ant-qrcode{background:#fff;border-radius:8px}.contact-qr-text{color:#ffffffb8}@media (width<=860px){.login-shell{grid-template-columns:1fr;align-content:center;gap:32px;width:min(520px,100vw - 40px)}.login-brand-panel{text-align:center;align-items:center}.login-brand-logo{width:210px;margin-bottom:18px}.login-brand-title{font-size:34px!important}.login-brand-status{margin-top:28px}}@media (width<=560px){.login-shell{width:calc(100vw - 28px);padding:28px 0}.login-brand-status{grid-template-columns:1fr;width:100%}.login-status-row{justify-content:center}.login-panel{padding:24px}}@media (height<=680px){.login-page{height:auto;min-height:100dvh;overflow:auto}.login-shell{height:auto;min-height:100dvh;padding:28px 0}}.ant-table-title{padding-top:0!important}.page-table-toolbar.ant-table-wrapper .ant-table-title{box-sizing:border-box;min-height:0;align-items:center!important;padding:8px 16px!important;display:flex!important}.page-table-toolbar-inner{flex-wrap:wrap;align-items:center;gap:8px;width:100%;line-height:1;display:flex}.page-table-toolbar-inner .ant-btn-link{align-items:center;height:auto;padding-inline:4px;line-height:1;display:inline-flex}
