:root{font-family:Microsoft YaHei,Noto Sans SC,system-ui,sans-serif;color:#17212b;background:#edf1f4;font-synthesis:none;text-rendering:optimizeLegibility;letter-spacing:0}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.app-loading{display:grid;place-items:center;align-content:center;gap:10px;min-height:100vh;color:#60717c;background:#edf1f4;font-size:13px}.app-loading svg,.data-loading svg{color:#258d63;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{display:grid;place-items:center;min-height:100vh;padding:24px;background:#e9eef1}.auth-panel{width:min(420px,100%);overflow:hidden;background:#fff;border:1px solid #d8e1e6;border-radius:7px;box-shadow:0 14px 38px #1630441f}.auth-brand{display:flex;align-items:center;gap:11px;min-height:68px;padding:0 24px;color:#eef5f7;background:#17324d}.auth-brand>span{display:grid;place-items:center;width:34px;height:34px;color:#fff;background:#2ca879;border:1px solid rgba(255,255,255,.32);border-radius:6px;font-weight:800}.auth-brand>div{display:grid;gap:2px}.auth-brand small{color:#adc0ce;font-size:11px}.auth-heading{padding:26px 28px 10px}.auth-heading svg{color:#258d63}.auth-heading h1{margin:12px 0 5px;font-size:20px}.auth-heading p{margin:0;color:#788792;font-size:12px}.auth-panel form{display:grid;gap:16px;padding:16px 28px 26px}.auth-panel form>label{display:grid;gap:7px}.auth-panel form>label>span{color:#4f616d;font-size:12px;font-weight:600}.auth-input{display:grid;grid-template-columns:22px 1fr auto;align-items:center;min-height:42px;padding:0 10px;color:#75858f;border:1px solid #cbd6dc;border-radius:5px}.auth-input:focus-within{border-color:#4ba680;box-shadow:0 0 0 3px #2ca8791a}.auth-input input{width:100%;min-height:38px;outline:0;border:0}.auth-input button{display:grid;place-items:center;width:32px;height:32px;padding:0;color:#6f808b;background:transparent;border:0}.auth-error,.data-alert{display:flex;align-items:center;gap:8px;padding:10px 12px;color:#9a3f3a;background:#fbe9e7;border:1px solid #efc7c3;border-radius:5px;font-size:12px}.auth-submit{width:100%;min-height:42px!important}.auth-panel>footer{padding:13px 24px;color:#82909a;background:#f6f8f9;border-top:1px solid #e4eaed;text-align:center;font-size:10px}.password-rule{margin:-6px 0 0;color:#7f8d96;font-size:10px}.data-alert{margin-bottom:14px}.data-loading{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:#657680;font-size:12px}.app-shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;z-index:20;display:flex;flex-direction:column;height:100vh;color:#eef5f7;background:#17324d;border-right:1px solid #102a40}.brand{display:flex;align-items:center;gap:11px;height:70px;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.1)}.brand>span{display:grid;place-items:center;width:34px;height:34px;color:#fff;background:#2ca879;border:1px solid rgba(255,255,255,.32);border-radius:6px;font-weight:800}.brand div{display:grid;gap:2px}.brand strong{font-size:16px}.brand small{color:#adc0ce;font-size:11px}.sidebar nav{display:grid;gap:3px;padding:18px 10px}.sidebar nav button,.sidebar-foot button{display:flex;align-items:center;gap:12px;width:100%;min-height:42px;padding:0 14px;color:#c8d5df;background:transparent;border:0;border-radius:5px;text-align:left}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#31b17f2e}.sidebar nav button.active{box-shadow:inset 3px 0 #3fc78e}.sidebar-foot{display:grid;gap:8px;margin-top:auto;padding:14px 10px 18px;border-top:1px solid rgba(255,255,255,.1)}.connection{display:flex;align-items:center;gap:8px;padding:8px 14px;color:#b9c9d4;font-size:12px}.connection i{width:8px;height:8px;background:#e1a83b;border-radius:50%}.connection.connected i{background:#3fc78e}main{min-width:0}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;height:70px;padding:0 28px;background:#fff;border-bottom:1px solid #dbe2e7}.topbar h1{margin:0;font-size:19px}.topbar p{margin:3px 0 0;color:#7d8c97;font-size:12px}.top-actions{display:flex;align-items:center;gap:14px;margin-left:auto}.top-actions .icon-button{position:relative}.top-actions .icon-button i{position:absolute;top:8px;right:8px;width:6px;height:6px;background:#e8554e;border-radius:50%}.today{color:#667683;font-size:12px}.mobile-menu{display:none!important}.content{padding:22px 26px 42px}.page-stack{display:grid;gap:18px;min-width:0}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{display:flex;align-items:center;gap:14px;min-height:106px;padding:18px;background:#fff;border:1px solid #dce4e8;border-radius:6px}.metric-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:6px}.metric-icon.green{color:#1e805a;background:#dff3ea}.metric-icon.blue{color:#276fa8;background:#e1eef9}.metric-icon.amber{color:#996410;background:#fbefd5}.metric-icon.red{color:#b3423e;background:#f8e4e2}.metric>div:last-child{display:grid;gap:3px}.metric span,.metric small{color:#788792;font-size:12px}.metric strong{font-size:25px;line-height:1.15}.band{min-width:0;background:#fff;border:1px solid #dce4e8;border-radius:6px}.section-head{display:flex;align-items:center;gap:16px;min-height:72px;padding:14px 20px;border-bottom:1px solid #e4eaee}.section-head>div:first-child{min-width:0}.section-head h2{margin:0;font-size:17px}.section-head p{margin:5px 0 0;color:#7b8994;font-size:12px}.section-head>:last-child{margin-left:auto}.primary,.secondary,.danger,.link-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 14px;border-radius:5px}.primary{color:#fff;background:#258d63;border:1px solid #258d63}.primary:hover{background:#1e7a55}.secondary{color:#40525f;background:#fff;border:1px solid #cfd9df}.secondary:hover{color:#1e7654;border-color:#78b99e}.danger{color:#a43e38;background:#fff;border:1px solid #e0aaa6}.danger:hover{color:#fff;background:#a94842;border-color:#a94842}.link-button{min-height:auto;padding:0;color:#237a59;background:transparent;border:0}.icon-button{display:inline-grid;place-items:center;width:36px;height:36px;padding:0;color:#667783;background:transparent;border:0;border-radius:4px}.icon-button:hover{color:#1e7654;background:#edf5f1}.segmented{display:flex;padding:3px;background:#eef2f4;border-radius:5px}.segmented button{min-height:29px;padding:0 10px;color:#697984;background:transparent;border:0;border-radius:4px;font-size:12px}.segmented button.active{color:#1f6f50;background:#fff;box-shadow:0 1px 3px #152c3c24}.segmented.large{width:max-content;padding:4px}.segmented.large button{min-height:36px;padding:0 18px;font-size:13px}.chart{display:grid;grid-template-columns:34px 1fr;min-height:260px;padding:18px 24px 18px 16px}.chart-y{display:flex;flex-direction:column;justify-content:space-between;align-items:end;padding:0 4px 22px 0;color:#8b99a3;font-size:10px}.chart-plot{min-width:0}.chart-plot svg{display:block;width:100%;height:215px;overflow:visible;background-image:linear-gradient(#edf1f3 1px,transparent 1px);background-size:100% 25%}.chart-x{display:flex;justify-content:space-between;color:#8b99a3;font-size:10px}.compact-list{padding:0 20px 8px}.compact-row{display:grid;grid-template-columns:minmax(220px,1.5fr) .6fr .6fr 1fr .45fr;align-items:center;gap:16px;min-height:54px;border-bottom:1px solid #edf1f3;font-size:12px}.compact-row:last-child{border-bottom:0}.row-leading{display:flex;align-items:center;gap:10px;min-width:0}.row-leading strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress{height:6px;overflow:hidden;background:#e8edef;border-radius:3px}.progress i{display:block;height:100%;background:#2ca879;border-radius:inherit}.status,.follow{display:inline-flex;align-items:center;width:max-content;min-height:24px;padding:0 8px;border-radius:4px;font-size:11px}.status-进行中{color:#1c7753;background:#def3e9}.status-未开始{color:#9b6714;background:#fbefd5}.status-已暂停{color:#a34d49;background:#f8e4e2}.status-已结束{color:#63737e;background:#e9edef}.app-filter{display:flex;align-items:center;gap:14px;padding:12px 20px 0}.app-filter button{min-height:30px;padding:0 11px;color:#647580;background:#f2f5f6;border:1px solid transparent;border-radius:4px;font-size:12px}.app-filter button.active{color:#1e7654;background:#e4f3ec;border-color:#b8ddcd}.app-filter span{color:#84919a;font-size:11px}.fission-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px 20px 20px}.fission-card{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:1fr auto;gap:9px 11px;min-height:132px;padding:15px;color:#263640;text-align:left;background:#fff;border:1px solid #dce4e8;border-radius:6px}.fission-card:hover{border-color:#83bfa6;background:#fbfdfc}.fission-card.active{border-color:#279168;box-shadow:inset 0 0 0 1px #279168}.fission-icon{display:grid;place-items:center;width:38px;height:38px;color:#1e7a56;background:#e3f3ec;border-radius:5px}.fission-copy{display:grid;align-content:start;gap:5px}.fission-copy strong{font-size:13px}.fission-copy small{color:#778690;font-size:10px;line-height:1.55}.fission-meta{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding-top:9px;border-top:1px solid #edf1f3}.fission-meta i{padding:3px 6px;color:#3f6474;background:#edf3f5;border-radius:3px;font-size:9px;font-style:normal}.fission-meta em{color:#87939b;font-size:10px;font-style:normal}.app-type{display:inline-flex;min-height:24px;align-items:center;padding:0 8px;color:#276fa8;background:#e4eff7;border-radius:4px;font-size:10px}.toolbar{display:flex;align-items:center;gap:10px;min-height:62px;padding:12px 20px;border-bottom:1px solid #e7ecef}.toolbar-wrap{flex-wrap:wrap}.search-field{display:flex;align-items:center;gap:8px;width:290px;min-height:36px;padding:0 11px;color:#83909a;border:1px solid #cfd9df;border-radius:5px;background:#fff}.search-field input{width:100%;outline:0;border:0}select,input,textarea{color:#263640;background:#fff;border:1px solid #cfd9df;border-radius:5px}.toolbar select{min-width:150px;height:36px;padding:0 10px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{min-height:48px;padding:13px 16px;border-bottom:1px solid #e8edef;text-align:left;font-size:12px;white-space:nowrap}th{color:#667783;background:#f6f8f9;font-weight:600}td strong{display:block;font-size:13px}td small{display:block;margin-top:3px;color:#8d99a2}tbody tr:hover{background:#fbfcfc}.empty{display:grid;place-items:center;gap:7px;min-height:230px;color:#9aa6ad}.empty strong{color:#687984}.empty span{font-size:12px}.reward-grid{display:grid;gap:0;padding:0 20px}.reward-item{display:grid;grid-template-columns:44px minmax(180px,1fr) minmax(180px,.8fr) 36px;align-items:center;gap:14px;min-height:78px;border-bottom:1px solid #e8edef}.reward-item:last-child{border-bottom:0}.reward-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:5px}.reward-实物{color:#996410;background:#fbefd5}.reward-现金券,.reward-红包{color:#b3423e;background:#f8e4e2}.reward-兑换码,.reward-表单,.reward-文本{color:#276fa8;background:#e1eef9}.reward-item>div:nth-child(2){display:grid;gap:4px}.reward-item span{color:#7a8993;font-size:11px}.reward-stock{display:grid;gap:8px}.person{display:flex;align-items:center;gap:9px}.person span{display:grid;place-items:center;width:32px;height:32px;color:#246f52;background:#dff1e9;border-radius:50%;font-size:10px}.person img{width:32px;height:32px;object-fit:cover;border-radius:50%}.tag-list{display:flex;flex-wrap:wrap;gap:5px}.tag-list span,.tag-picker>span{padding:4px 7px;color:#426170;background:#edf2f4;border-radius:4px;font-size:10px}.follow-未跟进{color:#98661a;background:#fbefd8}.follow-跟进中{color:#276fa8;background:#e1eef9}.follow-已成交{color:#1e7753;background:#def3e9}.tab-bar{display:flex;min-height:48px;padding:8px 20px 0;border-bottom:1px solid #e6ebee}.tab-bar button,.tier-tabs button{min-width:100px;color:#687883;background:transparent;border:0;border-bottom:2px solid transparent}.tab-bar button.active,.tier-tabs button.active{color:#207451;border-color:#2ca879}.code-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid #dce4e8;border-radius:6px}.code-summary>div{display:grid;gap:7px;min-height:82px;padding:17px 20px;border-right:1px solid #e7ecef}.code-summary>div:last-child{border-right:0}.code-summary span{color:#7a8993;font-size:11px}.code-summary strong{font-size:19px}.code-layout{display:grid;grid-template-columns:260px 1fr;min-height:350px}.code-info{padding:28px 24px;background:#f6f9f8;border-right:1px solid #e2e9e6}.code-info svg{color:#268b63}.code-info h3{margin:12px 0 6px;font-size:16px}.code-info p{margin:0;color:#71818c;font-size:12px;line-height:1.8}.code-info ul{display:grid;gap:7px;margin:18px 0 0;padding:0;list-style:none}.code-info li{position:relative;padding-left:14px;color:#62747e;font-size:11px}.code-info li:before{position:absolute;left:0;content:"·";color:#268b63;font-weight:800}.code-list{padding:8px 20px}.code-row{display:grid;grid-template-columns:52px minmax(170px,1fr) .55fr 54px 36px 36px 36px;align-items:center;gap:12px;min-height:78px;border-bottom:1px solid #e8edef}.fake-qr{display:grid;place-items:center;width:48px;height:48px;color:#223844;background:#f2f5f6;border:1px solid #d8e0e4}.live-qr{width:48px;height:48px;overflow:hidden;background:#fff;border:1px solid #d8e0e4}.live-qr img{display:block;width:100%;height:100%;object-fit:contain}.code-row>div:nth-child(2){display:grid;gap:4px}.code-row span{color:#788792;font-size:11px}.code-row a.icon-button{text-decoration:none}.switch{position:relative;width:36px;height:20px;padding:0;background:#c9d2d7;border:0;border-radius:10px}.switch i{position:absolute;top:3px;left:3px;width:14px;height:14px;background:#fff;border-radius:50%;transition:.2s}.switch.on{background:#2ca879}.switch.on i{left:19px}.code-detail{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(900px,100%);max-height:calc(100vh - 48px);overflow:hidden;background:#fff;border-radius:7px;box-shadow:0 18px 50px #05141e42}.code-detail>header,.code-detail>footer{display:flex;align-items:center;gap:10px;padding:15px 18px}.code-detail>header{border-bottom:1px solid #e4eaed}.code-detail>header>div{flex:1;min-width:0}.code-detail>header p{margin:4px 0 0;color:#7b8993;font-size:11px}.code-detail>footer{justify-content:flex-end;border-top:1px solid #e4eaed}.code-detail-body{display:grid;gap:22px;padding:22px 24px 26px;overflow:auto}.code-detail-overview{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px}.code-detail-qr{width:180px;height:180px}.code-detail-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #dfe6e3}.code-detail-summary>div{display:grid;align-content:center;gap:5px;min-height:89px;padding:12px 16px;border-right:1px solid #e3e9e6;border-bottom:1px solid #e3e9e6}.code-detail-summary>div:nth-child(2n){border-right:0}.code-detail-summary>div:nth-last-child(-n+2){border-bottom:0}.code-detail-summary span{color:#7b8a82;font-size:10px}.code-detail-summary strong{font-size:23px}.code-detail-summary em{color:#75857d;font-size:10px;font-style:normal}.code-detail-summary .summary-member{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.code-daily-chart{display:grid;grid-template-columns:repeat(7,1fr);align-items:end;min-height:126px;padding:14px 10px 9px;background:#f7f9f8;border:1px solid #e0e7e3}.code-daily-chart>div{display:grid;justify-items:center;align-items:end;gap:5px;height:100px}.code-daily-chart strong{font-size:10px}.code-daily-chart i{width:min(28px,55%);min-height:5px;background:#2a8c65}.code-daily-chart span{color:#78877f;font-size:9px}.code-edit-form{padding:16px;background:#f8faf9;border:1px solid #e0e7e4}.code-edit-actions{display:flex;justify-content:flex-end;gap:8px}.code-config-readonly{display:grid;border:1px solid #e0e7e4}.code-config-readonly>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;min-height:46px;padding:11px 13px;border-bottom:1px solid #e8edea}.code-config-readonly>div:last-child{border-bottom:0}.code-config-readonly span{color:#78877f;font-size:10px}.code-config-readonly strong{font-size:11px;line-height:1.6}.code-customer-list{max-height:260px;overflow:auto;border:1px solid #e0e7e4}.code-customer-list>div{display:grid;grid-template-columns:30px minmax(0,1fr) 160px;align-items:center;gap:10px;min-height:48px;padding:7px 11px;border-bottom:1px solid #e8edea}.code-customer-list>div:last-child{border-bottom:0}.code-customer-list img,.code-customer-list svg{width:28px;height:28px;object-fit:cover;border-radius:50%}.code-customer-list strong{font-size:11px}.code-customer-list span{color:#77867e;font-size:10px;text-align:right}.operations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.operation{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;min-height:110px;padding:18px 20px;border-right:1px solid #e7ecef;border-bottom:1px solid #e7ecef}.operation:nth-child(2n){border-right:0}.operation svg:first-child{color:#268b63}.operation h3{margin:0 0 5px;font-size:14px}.operation p{margin:0;color:#7a8993;font-size:12px}.steps{display:grid;grid-template-columns:1fr 70px 1fr 70px 1fr;align-items:center;padding:28px 40px}.steps>div{display:grid;grid-template-columns:28px 1fr;column-gap:10px;align-items:center}.steps>div>span{grid-row:1 / span 2;display:grid;place-items:center;width:28px;height:28px;color:#788792;background:#e9edef;border-radius:50%}.steps>div.done>span{color:#fff;background:#2ca879}.steps strong{font-size:13px}.steps small{color:#82909a;font-size:10px}.steps>i{height:1px;background:#d5dde1}.authorization{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:14px;margin:0 40px 28px;padding:20px;background:#f5f8f7;border:1px solid #dce8e3;border-radius:5px}.authorization>svg{color:#258d63}.authorization strong{font-size:14px}.authorization p{margin:4px 0 0;color:#74838e;font-size:11px}.wecom-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 40px 22px;padding:20px;background:#f8faf9;border:1px solid #dce7e2;border-radius:5px}.wecom-form label{display:grid;gap:7px}.wecom-form label>span{color:#4c5f6a;font-size:11px;font-weight:600}.wecom-form input{width:100%;min-height:38px;padding:0 10px;outline:0}.wecom-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:9px;padding-top:4px}.wecom-operations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 40px 22px;border:1px solid #e0e7e4;border-radius:5px}.wecom-operations article{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;min-height:82px;padding:14px 16px;border-right:1px solid #e7ecef;border-bottom:1px solid #e7ecef}.wecom-operations article:nth-child(2n){border-right:0}.wecom-operations article:nth-last-child(-n+2){border-bottom:0}.wecom-operations article>svg{color:#268b63}.wecom-operations article>div{display:grid;gap:4px;min-width:0}.wecom-operations article strong{font-size:12px}.wecom-operations article span{color:#7a8993;font-size:10px}.wecom-operations .callback-path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,monospace}.settings-message{margin:-8px 40px 22px;padding:10px 12px;color:#2d6d54;background:#e7f4ee;border:1px solid #c9e4d8;border-radius:5px;font-size:11px}.settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-list button{display:grid;grid-template-columns:32px 1fr 20px;align-items:center;gap:12px;min-height:82px;padding:14px 20px;text-align:left;background:#fff;border:0;border-right:1px solid #e7ecef;border-bottom:1px solid #e7ecef}.settings-list button:nth-child(2n){border-right:0}.settings-list button:hover{background:#f8faf9}.settings-list button>svg:first-child{color:#278965}.settings-list span{display:grid;gap:4px}.settings-list strong{font-size:13px}.settings-list small{color:#7b8993;font-size:11px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:#0d1c278f}.wizard{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(940px,100%);max-height:calc(100vh - 48px);overflow:hidden;background:#fff;border-radius:7px;box-shadow:0 18px 50px #05141e42}.wizard>header,.wizard>footer{display:flex;align-items:center;gap:12px;padding:14px 18px}.wizard>header{border-bottom:1px solid #e4eaed}.wizard>header div{flex:1}.wizard h2{margin:0;font-size:17px}.wizard header p{margin:3px 0 0;color:#7b8993;font-size:11px}.wizard>footer{justify-content:flex-end;border-top:1px solid #e4eaed}.campaign-detail{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(820px,100%);max-height:calc(100vh - 48px);overflow:hidden;background:#fff;border-radius:7px;box-shadow:0 18px 50px #05141e42}.campaign-detail>header,.campaign-detail>footer{display:flex;align-items:center;gap:10px;padding:15px 18px}.campaign-detail>header{border-bottom:1px solid #e4eaed}.campaign-detail>header>div{flex:1;min-width:0}.campaign-detail>header p{margin:4px 0 0;color:#7b8993;font-size:11px}.campaign-detail>footer{justify-content:flex-end;border-top:1px solid #e4eaed}.detail-title-row{display:flex;align-items:center;gap:10px;min-width:0}.detail-title-row h2{overflow:hidden;margin:0;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.campaign-detail-body{display:grid;gap:22px;padding:22px 24px 26px;overflow:auto}.detail-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #dfe6e9}.detail-summary>div{display:grid;gap:5px;min-height:70px;padding:13px 15px;border-right:1px solid #e4eaed;border-bottom:1px solid #e4eaed}.detail-summary>div:nth-child(2n){border-right:0}.detail-summary>div:nth-last-child(-n+2){border-bottom:0}.detail-summary span,.detail-section-head span{color:#7d8b94;font-size:11px}.detail-summary strong{font-size:12px;font-weight:600}.detail-section{display:grid;gap:12px}.detail-section-head{display:flex;align-items:center;gap:10px}.detail-section-head h3{flex:1;margin:0;font-size:14px}.detail-posters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.detail-posters figure{min-width:0;margin:0}.detail-posters img{display:block;width:100%;aspect-ratio:9 / 16;object-fit:cover;background:#edf1f3;border:1px solid #d6e0e4;border-radius:4px}.detail-posters figcaption{margin-top:5px;color:#7d8b94;font-size:10px;text-align:center}.detail-empty{display:flex;align-items:center;justify-content:center;gap:8px;min-height:84px;color:#7c8b94;background:#f8fafb;border:1px dashed #c8d3d8;font-size:12px}.detail-tiers{display:grid;gap:8px}.detail-tiers>div{display:grid;grid-template-columns:42px 110px minmax(0,1fr) 54px;align-items:center;gap:12px;min-height:48px;padding:0 12px;background:#f8faf9;border:1px solid #e1e8e5}.detail-tiers span{color:#237a58;font-size:11px;font-weight:700}.detail-tiers strong{font-size:12px}.detail-tiers em{overflow:hidden;font-size:12px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.detail-tiers small{color:#71818b;font-size:10px;text-align:right}.fission-admin-entry{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;align-items:center;padding:14px;background:#f6f9f8;border:1px solid #dce6e2}.fission-admin-entry>img{width:132px;height:132px;object-fit:contain;background:#fff;border:1px solid #dbe4e1}.fission-admin-entry>div{display:grid;gap:8px;min-width:0}.fission-admin-entry strong{font-size:13px}.fission-admin-entry span{overflow:hidden;color:#65766e;font-family:Consolas,monospace;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.fission-admin-entry>div>div{display:flex;flex-wrap:wrap;gap:8px}.button-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 14px;text-decoration:none}.detail-data-table{overflow:auto;border:1px solid #e0e7e4}.detail-data-table table{min-width:650px}.detail-data-table th,.detail-data-table td{padding:9px 11px;font-size:11px}.detail-data-table td small{display:block;margin-top:3px;color:#78868f}.secondary.compact{min-height:30px;padding:0 9px;font-size:10px}.claim-status{display:inline-flex;padding:4px 7px;color:#9a6518;background:#fff0c8;font-size:10px;font-weight:700}.claim-status.done{color:#236b50;background:#dff0e8}.detail-notice{display:flex;align-items:center;gap:7px;padding:10px 12px;color:#246b50;background:#e5f1ec;border:1px solid #c8ded4;font-size:11px}.detail-notice.payment-notice{color:#805c18;background:#fff4d8;border-color:#ead59d}.campaign-member-field{display:grid;gap:8px}.campaign-member-field>span{color:#4b5d69;font-size:12px;font-weight:600}.campaign-member-list{display:flex;flex-wrap:wrap;gap:8px}.campaign-member-list label{display:flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;background:#f7f9fa;border:1px solid #d6dfe4;border-radius:5px}.campaign-member-list input{width:16px;min-height:16px;padding:0}.campaign-member-list span{font-size:11px}.lottery-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #e4eaed}.lottery-summary>div{display:grid;gap:5px;min-height:82px;padding:17px 20px;border-right:1px solid #e4eaed}.lottery-summary>div:last-child{border-right:0}.lottery-summary span{color:#778791;font-size:11px}.lottery-summary strong{font-size:23px}.lottery-creator,.lottery-detail{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(900px,100%);max-height:calc(100vh - 48px);overflow:hidden;background:#fff;border-radius:7px;box-shadow:0 18px 50px #05141e42}.lottery-creator>header,.lottery-creator>footer,.lottery-detail>header,.lottery-detail>footer{display:flex;align-items:center;gap:10px;padding:15px 18px}.lottery-creator>header,.lottery-detail>header{border-bottom:1px solid #e4eaed}.lottery-creator>header>div,.lottery-detail>header>div{flex:1;min-width:0}.lottery-creator h2,.lottery-detail h2{margin:0;font-size:17px}.lottery-creator header p,.lottery-detail header p{margin:4px 0 0;color:#7b8993;font-size:11px}.lottery-creator>footer,.lottery-detail>footer{justify-content:flex-end;border-top:1px solid #e4eaed}.lottery-creator-body,.lottery-detail-body{display:grid;gap:22px;padding:22px 24px 26px;overflow:auto}.lottery-access-note{display:flex;align-items:center;gap:8px;align-self:end;min-height:38px;padding:0 11px;color:#267252;background:#e6f3ed;border:1px solid #c3dfd2;font-size:11px}.prize-editor{display:grid;gap:9px}.prize-editor .detail-section-head{min-height:38px}.prize-editor .detail-section-head .secondary{margin-left:4px}.prize-editor-head,.prize-editor-row{display:grid;grid-template-columns:minmax(180px,1fr) 100px 130px 36px;align-items:center;gap:10px}.prize-editor-head{padding:0 3px;color:#74838d;font-size:10px}.prize-editor-row{min-height:48px;padding:7px;background:#f8fafb;border:1px solid #e0e7ea}.prize-editor-row input{width:100%;min-height:34px;padding:6px 9px}.prize-editor-row>label{display:grid;grid-template-columns:1fr 22px;align-items:center}.prize-editor-row>label span{color:#6d7d87;font-size:11px;text-align:center}.lottery-link{overflow:hidden;color:#257654;font-family:Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.lottery-prize-list,.lottery-draw-list{display:grid;border:1px solid #e0e7ea}.lottery-prize-list>div{display:grid;grid-template-columns:minmax(140px,1fr) 80px 120px 180px;align-items:center;gap:12px;min-height:52px;padding:7px 13px;border-bottom:1px solid #e8edef}.lottery-prize-list>div:last-child,.lottery-draw-list>div:last-child{border-bottom:0}.lottery-prize-list strong{font-size:12px}.lottery-prize-list span{color:#70808a;font-size:11px;text-align:right}.lottery-draw-list{max-height:250px;overflow:auto}.lottery-draw-list>div{display:grid;grid-template-columns:155px minmax(110px,1fr) 145px 76px;align-items:center;gap:10px;min-height:46px;padding:0 10px;border-bottom:1px solid #e8edef;font-size:11px}.lottery-draw-list strong{font-size:12px}.lottery-draw-list code{color:#6f7f89;text-align:right}.lottery-draw-list em{color:#7b8993;font-size:10px;font-style:normal;text-align:right}.lottery-draw-list em.redeemed{display:flex;align-items:center;justify-content:flex-end;gap:4px;color:#237a58}.draw-redeem{min-height:30px!important;padding:0 10px!important}.stock-stepper{display:grid;grid-template-columns:62px minmax(96px,1fr);gap:6px}.stock-stepper input{width:100%;min-height:32px;padding:5px 7px}.stock-stepper button{min-height:32px;padding:0 8px;font-size:10px}.spin{animation:spin .9s linear infinite}.fission-public{min-height:100vh;color:#192820;background:#eef3f0}.fission-public.loading{display:grid;place-items:center;align-content:center;gap:12px;color:#607068}.fission-public-header{display:flex;align-items:center;gap:10px;width:100%;max-width:780px;min-height:70px;margin:0 auto;padding:0 18px}.fission-public-header img{width:40px;height:40px;object-fit:cover;border-radius:6px}.fission-public-header>div{display:grid;gap:2px;flex:1}.fission-public-header strong{font-size:14px}.fission-public-header span{color:#718078;font-size:10px}.fission-public-header em{display:flex;align-items:center;gap:5px;color:#287556;font-size:10px;font-style:normal}.fission-hero{position:relative;display:grid;justify-items:center;width:100%;max-width:780px;min-height:230px;margin:0 auto;padding:42px 22px 36px;color:#fff;background:#1f684c;text-align:center;overflow:hidden}.fission-hero:after{content:"";position:absolute;right:-30px;bottom:-56px;width:180px;height:180px;border:32px solid rgba(255,215,91,.22);border-radius:50%}.fission-kicker{display:inline-flex;align-items:center;gap:6px;color:#ffe485;font-size:11px;font-weight:700}.fission-hero h1{max-width:680px;margin:13px 0 11px;font-size:32px;line-height:1.25}.fission-hero p{display:flex;align-items:center;gap:6px;margin:0;color:#d7ebe1;font-size:11px}.fission-status{z-index:1;margin-top:20px;padding:6px 10px;color:#2c563f;background:#ffe381;font-size:10px;font-style:normal;font-weight:800}.fission-entry,.fission-poster-area{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;align-items:center;width:calc(100% - 28px);max-width:780px;margin:18px auto 0;padding:28px;background:#fff;border:1px solid #dce5e1}.fission-entry-copy,.fission-poster-copy{display:grid;gap:10px}.fission-entry-copy>span,.fission-poster-copy>span{color:#aa463a;font-size:11px;font-weight:800}.fission-entry-copy h2,.fission-poster-copy h2{margin:0;font-size:22px;line-height:1.45}.fission-entry-copy p{margin:0;color:#66766e;font-size:12px;line-height:1.7}.fission-qr-frame,.fission-personal-qr{display:grid;place-items:center;gap:8px;margin:0;padding:12px;background:#f6f9f7;border:1px solid #d8e2de}.fission-qr-frame img,.fission-personal-qr img{width:190px;height:190px;object-fit:contain;background:#fff}.fission-qr-frame strong,.fission-personal-qr figcaption{color:#53645b;font-size:11px;font-weight:700}.fission-progress-band{display:grid;grid-template-columns:210px minmax(0,1fr);width:calc(100% - 28px);max-width:780px;margin:18px auto 0;color:#fff;background:#243a31}.fission-progress-band>div:first-child{display:grid;grid-template-columns:28px 1fr auto auto;align-items:center;gap:6px;min-height:100px;padding:18px 22px;border-right:1px solid #496057}.fission-progress-band>div:first-child span{grid-column:2;font-size:10px}.fission-progress-band>div:first-child strong{grid-column:2;font-size:30px}.fission-progress-band>div:first-child em{align-self:end;padding-bottom:5px;color:#c8d7d0;font-size:11px;font-style:normal}.fission-progress-copy{display:grid;align-content:center;gap:7px;padding:18px 24px}.fission-progress-copy strong{font-size:16px}.fission-progress-copy span{color:#ffe17b;font-size:12px}.gift-progress>div:first-child{grid-template-columns:28px 1fr}.gift-progress>div:first-child strong{grid-column:2;font-size:19px}.collection-progress{display:grid;gap:18px;width:calc(100% - 28px);max-width:780px;margin:18px auto 0;padding:24px;background:#fff;border:1px solid #dce5e1}.collection-progress>strong{color:#287556;font-size:13px;text-align:center}.collection-word-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:10px}.collection-word-grid span{display:grid;place-items:center;aspect-ratio:1;min-width:0;color:#8b9891;background:#edf1ef;border:1px dashed #b7c2bc;font-size:24px;font-weight:800}.collection-word-grid span.collected{color:#fff;background:#287b59;border-color:#287b59}.fission-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:4px}.fission-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 15px;color:#fff;background:#267c5a;border:1px solid #267c5a;font-weight:700}.fission-actions button.secondary{color:#405249;background:#fff;border-color:#cbd7d1}.fission-actions button:disabled{opacity:.55}.fission-notice{display:flex;align-items:center;gap:6px;margin:0;color:#267354;font-size:11px}.fission-rewards{display:grid;gap:13px;width:calc(100% - 28px);max-width:780px;margin:18px auto 0;padding:24px;background:#fff;border:1px solid #dce5e1}.fission-section-title{display:flex;align-items:center;gap:10px}.fission-section-title>svg{color:#a94b3d}.fission-section-title h2{margin:0;font-size:17px}.fission-section-title p{margin:3px 0 0;color:#78877f;font-size:10px}.fission-tier-list{display:grid;gap:8px}.fission-tier-list article{display:grid;grid-template-columns:48px minmax(0,1fr) 64px;align-items:center;gap:10px;min-height:62px;padding:8px 12px;background:#f7f9f8;border:1px solid #e0e7e3}.fission-tier-list article>span{color:#8a5c16;font-size:11px;font-weight:800}.fission-tier-list article>div{display:grid;gap:4px;min-width:0}.fission-tier-list strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.fission-tier-list small{color:#74837b;font-size:10px}.fission-tier-list em{color:#6f7d76;font-size:10px;font-style:normal;text-align:right}.fission-tier-list article.reached{background:#e7f2ed;border-color:#c9e0d6}.fission-tier-list article.reached em{color:#236f51;font-weight:800}.fission-public-footer{display:flex;align-items:flex-start;justify-content:center;gap:7px;width:calc(100% - 28px);max-width:780px;margin:18px auto 0;padding:0 12px 34px;color:#6c7b73;font-size:10px;line-height:1.6}.fission-public-footer svg{flex:none;color:#287556}.lottery-public{min-height:100vh;color:#1f2b33;background:#edf2f1}.lottery-public.loading{display:grid;place-items:center;align-content:center;gap:12px;color:#5d6e77}.lottery-public-header{display:flex;align-items:center;gap:10px;width:min(680px,100%);min-height:68px;margin:0 auto;padding:0 18px}.lottery-public-header img{width:38px;height:38px;object-fit:cover;border-radius:7px}.lottery-public-header>div{display:grid;gap:2px;flex:1}.lottery-public-header strong{font-size:14px}.lottery-public-header span{color:#6e7d86;font-size:10px}.lottery-public-header em{display:flex;align-items:center;gap:5px;color:#267252;font-size:10px;font-style:normal}.lottery-stage{display:grid;gap:18px;width:min(680px,100%);margin:0 auto;padding:18px 18px 40px}.lottery-heading{text-align:center}.lottery-heading>span{display:inline-flex;align-items:center;gap:5px;color:#a14b3c;font-size:11px;font-weight:700}.lottery-heading h1{margin:9px 0 7px;font-size:28px}.lottery-heading p{display:flex;align-items:center;justify-content:center;gap:6px;margin:0;color:#6d7b84;font-size:11px}.roulette-shell{position:relative;display:grid;place-items:center;width:370px;height:370px;margin:0 auto}.roulette-shell:before{position:absolute;top:4px;right:4px;bottom:4px;left:4px;content:"";background:#9b3d34;border:8px solid #743027;border-radius:50%;box-shadow:0 14px 30px #4827203d}.roulette-wheel{position:relative;width:330px;height:330px;border:6px solid #fff2bd;border-radius:50%;transition:transform 4.1s cubic-bezier(.13,.71,.19,1);box-shadow:inset 0 0 0 2px #6434274d}.roulette-wheel:after{position:absolute;top:50%;right:50%;bottom:50%;left:50%;width:2px;height:2px;content:""}.roulette-label{position:absolute;top:calc(50% - 10px);left:calc(50% - 48px);display:block;width:96px;height:20px;transform:rotate(var(--wheel-angle)) translateY(-118px);transform-origin:48px 10px;text-align:center}.roulette-label i{display:block;overflow:hidden;color:#fff;font-size:11px;font-style:normal;font-weight:800;text-shadow:0 1px 2px rgba(38,30,27,.42);text-overflow:ellipsis;white-space:nowrap;transform:rotate(var(--wheel-counter-angle))}.roulette-pointer{position:absolute;top:-1px;z-index:4;width:0;height:0;border-right:18px solid transparent;border-left:18px solid transparent;border-top:42px solid #f6d55d;filter:drop-shadow(0 2px 1px rgba(64,35,28,.3))}.roulette-trigger{position:absolute;z-index:3;display:grid;place-items:center;align-content:center;gap:2px;width:108px;height:108px;color:#5b2a21;background:#ffe272;border:6px solid #fff3c2;border-radius:50%;box-shadow:0 4px 10px #43231b47}.roulette-trigger strong{font-size:17px}.roulette-trigger span{font-size:9px}.roulette-trigger:disabled{color:#756c64;background:#d9d5c9}.lottery-machine{width:min(390px,100%);margin:0 auto;padding:14px;background:#b84c3e;border:4px solid #8e352d;border-radius:8px;box-shadow:0 12px 25px #522a2333}.machine-top{display:flex;align-items:center;justify-content:center;gap:12px;height:34px;color:#fff4c8;font-size:12px;font-weight:800}.machine-top i{width:8px;height:8px;background:#ffd75b;border-radius:50%;box-shadow:0 0 0 3px #ffd75b2e}.machine-window{padding:8px;background:#f2c84d;border:2px solid #813029}.machine-reel{display:grid;place-items:center;align-content:center;gap:7px;min-height:190px;color:#263741;background:#fff;border:1px solid #d7dddf;overflow:hidden}.machine-reel svg{color:#2c8b67}.machine-reel strong{font-size:19px}.machine-reel span{color:#788891;font-size:11px}.lottery-machine.drawing .machine-reel svg{animation:lottery-roll .45s linear infinite}@keyframes lottery-roll{to{transform:rotate(360deg) scale(1.06)}}.lottery-machine>button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;margin-top:12px;color:#5c291d;background:#ffd75b;border:2px solid #84332a;border-radius:5px;font-size:16px;font-weight:800}.lottery-machine>button:hover{background:#ffe47e}.lottery-public-notice,.lottery-public-error{padding:11px 13px;color:#815f1b;background:#fff4cf;border:1px solid #ecd78f;font-size:12px;text-align:center}.lottery-public-error{color:#963d36;background:#fbe9e7;border-color:#efc7c3}.lottery-prize-pool{background:#fff;border:1px solid #dce4e3;border-radius:6px}.lottery-prize-pool>div{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 14px;border-bottom:1px solid #e7eceb}.lottery-prize-pool h2{flex:1;margin:0;font-size:15px}.lottery-prize-pool>div span{color:#71818a;font-size:10px}.lottery-prize-pool ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}.lottery-prize-pool li{display:grid;grid-template-columns:24px 26px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:58px;padding:8px 12px;border-right:1px solid #e7eceb;border-bottom:1px solid #e7eceb}.lottery-prize-pool li:nth-child(2n){border-right:0}.lottery-prize-pool li>span{display:grid;place-items:center;width:22px;height:22px;color:#8d5d13;background:#fff0be;border-radius:50%;font-size:10px;font-weight:700}.lottery-prize-pool li>svg{color:#b24b3d}.lottery-prize-pool li strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.lottery-prize-pool li em{color:#287455;font-size:9px;font-style:normal}.lottery-prize-pool li.sold-out{opacity:.48}.lottery-rules{display:flex;align-items:flex-start;gap:9px;padding:13px;color:#62727b;background:#e5eeeb;border:1px solid #cbdad5;font-size:10px;line-height:1.7}.lottery-rules svg{flex:none;color:#2b8060}.lottery-rules p{margin:0}.lottery-result-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:18px;background:#111f27a3}.lottery-result{position:relative;display:grid;place-items:center;gap:13px;width:min(360px,100%);padding:32px 24px 24px;background:#fff;border:1px solid #dbe3e5;border-radius:8px;box-shadow:0 18px 50px #05141e47;text-align:center}.lottery-result>.icon-button{position:absolute;top:9px;right:9px}.lottery-result>span{display:grid;place-items:center;width:72px;height:72px;color:#5d6f78;background:#e9eef0;border-radius:50%}.lottery-result.winner>span{color:#9c3f33;background:#ffe6b4}.lottery-result h2{margin:0;font-size:22px}.lottery-result>strong{color:#a84336;font-size:17px}.lottery-result>div{display:flex;align-items:center;gap:8px;padding:10px 12px;color:#287455;background:#e7f2ed;border:1px solid #c8dfd5}.lottery-result p{margin:0;font-size:10px;line-height:1.6}.lottery-result code{color:#33434d;font-size:12px}.lottery-result>.primary{width:100%}.wizard-steps{display:grid;grid-template-columns:repeat(3,1fr);padding:12px 26px;background:#f6f8f9;border-bottom:1px solid #e3e9ec}.wizard-steps button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:34px;color:#778691;background:transparent;border:0}.wizard-steps button span{display:grid;place-items:center;width:22px;height:22px;background:#dfe5e8;border-radius:50%;font-size:11px}.wizard-steps button.active{color:#1c7652;font-weight:700}.wizard-steps button.active span,.wizard-steps button.done span{color:#fff;background:#2ca879}.wizard-body{min-height:450px;padding:24px 28px;overflow:auto}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid label,.reward-step>label,.advanced>label{display:grid;gap:8px}.form-grid label>span,.reward-step label>span,.advanced label>span{color:#4b5d69;font-size:12px;font-weight:600}.form-grid .full{grid-column:1 / -1}.employee-field{display:grid;gap:8px}.employee-field>span{color:#4b5d69;font-size:12px;font-weight:600}.employee-picker{display:flex;flex-wrap:wrap;gap:9px}.employee-picker>label{display:flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;background:#f7f9fa;border:1px solid #d6dfe4;border-radius:5px}.employee-picker input{width:16px;min-height:16px;padding:0}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:38px;padding:9px 11px;outline:0}.form-grid textarea{min-height:92px;resize:vertical;line-height:1.7}.app-brief{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;min-height:68px;padding:12px 14px;background:#f3f8f6;border:1px solid #d9e9e2;border-radius:5px}.app-brief>span{display:grid;place-items:center;width:38px;height:38px;color:#237a58;background:#dcefe7;border-radius:5px}.app-brief>div{display:grid;gap:4px}.app-brief strong{font-size:13px}.app-brief small{color:#71818b;font-size:11px}.app-brief em{padding:4px 8px;color:#2d6953;background:#fff;border:1px solid #cfe2da;border-radius:4px;font-size:10px;font-style:normal}.upload-box{display:grid;place-items:center;gap:6px;min-height:130px;padding:16px;color:#6f7f89;border:1px dashed #b9c8cf;background:#fafcfc}.upload-box>svg{color:#2a9168}.upload-box span{font-size:11px}.file-input{display:none}.poster-preview-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%}.poster-preview{position:relative;width:82px;aspect-ratio:9 / 16;overflow:hidden;background:#edf1f3;border:1px solid #d6e0e4;border-radius:4px}.poster-preview img{width:100%;height:100%;object-fit:cover}.poster-preview .icon-button{position:absolute;top:3px;right:3px;width:26px;height:26px;color:#fff;background:#182a36b8}.upload-box .upload-error{color:#a43e38;font-weight:600}.tier-tabs{display:flex;height:40px;margin-bottom:24px;border-bottom:1px solid #e3e9ec}.reward-step{display:grid;gap:22px}.reward-type{flex-wrap:wrap;width:max-content;max-width:100%}.reward-type button{min-width:82px}.rule-note{display:flex;align-items:center;gap:10px;padding:13px;color:#7d621d;background:#fbf3df;border:1px solid #f0dfae;font-size:12px}.rule-note.error{color:#9a3f3a;background:#fbe9e7;border-color:#efc7c3}.advanced{display:grid;gap:18px}.tag-picker{display:flex;align-items:center;gap:9px;min-height:40px}.switch-row{display:flex;align-items:center;gap:18px;padding:14px 0;border-bottom:1px solid #e8edef}.switch-row>div{display:grid;gap:4px;flex:1}.switch-row strong{font-size:13px}.switch-row span{color:#7c8a94;font-size:11px}.toast{position:fixed;right:24px;bottom:24px;z-index:80;display:flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;color:#fff;background:#1d6f50;border-radius:5px;box-shadow:0 8px 24px #14392b47;font-size:12px}.promoter-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid #dce4e8;border-radius:6px}.promoter-summary>div{display:grid;grid-template-columns:28px 1fr;gap:3px 8px;align-items:center;min-height:94px;padding:16px 20px;border-right:1px solid #e5eaed}.promoter-summary>div:last-child{border-right:0}.promoter-summary svg{grid-row:1 / 3;color:#26815c}.promoter-summary span{color:#74838d;font-size:11px}.promoter-summary strong{font-size:21px}.promoter-redeem-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.7fr) auto;gap:14px;align-items:end;padding:18px 20px 22px}.promoter-redeem-form label{display:grid;gap:7px}.promoter-redeem-form label span{color:#4b5d69;font-size:11px;font-weight:600}.promoter-redeem-form input{min-height:40px;padding:0 11px}.promoter-redeem-form button{min-height:40px}.promoter-status{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;color:#737f87;background:#edf0f2;border-radius:4px;font-size:10px;font-weight:700}.promoter-status.active{color:#1d7553;background:#dff2e9}.promoter-creator,.promoter-detail{display:flex;flex-direction:column;width:min(760px,100%);max-height:min(860px,calc(100vh - 32px));overflow:hidden;background:#fff;border:1px solid #d4dde2;border-radius:7px;box-shadow:0 24px 70px #14283638}.promoter-detail{width:min(900px,100%)}.promoter-creator>header,.promoter-detail>header{display:flex;align-items:center;gap:12px;min-height:66px;padding:12px 18px 12px 22px;border-bottom:1px solid #e2e8eb}.promoter-creator>header>div,.promoter-detail>header>div{flex:1;min-width:0}.promoter-creator h2,.promoter-detail h2{margin:0;font-size:18px}.promoter-creator header p,.promoter-detail header p{margin:4px 0 0;color:#788792;font-size:11px}.promoter-creator-body,.promoter-detail-body{display:grid;gap:18px;padding:22px;overflow:auto}.promoter-creator>footer,.promoter-detail>footer{display:flex;justify-content:flex-end;gap:10px;min-height:64px;padding:13px 20px;border-top:1px solid #e2e8eb}.commission-editor,.promoter-stat-section{display:grid;gap:12px}.commission-editor .detail-section-head,.promoter-stat-section .detail-section-head{padding:0 0 10px;border-bottom:1px solid #e5eaed}.commission-editor .detail-section-head p,.promoter-stat-section .detail-section-head p{margin:4px 0 0;color:#7a8992;font-size:10px}.commission-tier-list{display:grid;gap:8px}.commission-tier-list>div{display:grid;grid-template-columns:42px minmax(130px,1fr) minmax(130px,1fr) 36px;gap:10px;align-items:end;padding:12px;background:#f7f9f9;border:1px solid #e1e7e5}.commission-tier-list>div>strong{align-self:center;color:#267657;font-size:12px}.commission-tier-list label{display:grid;gap:5px}.commission-tier-list label span{color:#667781;font-size:10px}.commission-tier-list input{min-height:36px;padding:0 9px}.promoter-code-overview{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;align-items:center}.promoter-code-overview figure{display:grid;justify-items:center;gap:7px;margin:0;padding:12px;background:#f7f9f8;border:1px solid #dce5e1}.promoter-code-overview figure img{width:180px;height:180px}.promoter-code-overview figcaption{color:#65766d;font-size:10px}.promoter-code-overview>div{display:grid;gap:8px;min-width:0}.promoter-code-overview>div>span{color:#74837b;font-size:10px}.promoter-code-overview>div>strong{overflow:hidden;font-family:Consolas,monospace;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.promoter-code-overview p{margin:0;color:#62736a;font-size:11px;line-height:1.7}.promoter-code-overview>div>div{display:flex;flex-wrap:wrap;gap:8px}.promoter-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dfe6e3}.promoter-metrics>div{display:grid;gap:5px;min-height:76px;padding:14px 16px;border-right:1px solid #dfe6e3}.promoter-metrics>div:last-child{border-right:0}.promoter-metrics span{color:#75847c;font-size:10px}.promoter-metrics strong{font-size:19px}.promoter-bars{display:grid;grid-template-columns:repeat(14,minmax(18px,1fr));gap:5px;align-items:end;height:180px;padding:16px 10px 0;background:#f8faf9;border:1px solid #e1e7e4}.promoter-bars>div{display:grid;grid-template-rows:minmax(0,1fr) 20px 18px;justify-items:center;align-items:end;height:100%}.promoter-bars i{width:min(22px,80%);min-height:4px;background:#2d9169}.promoter-bars strong{align-self:center;font-size:9px}.promoter-bars span{align-self:center;color:#86928c;font-size:8px;writing-mode:vertical-rl}.commission-readonly{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px}.commission-readonly>div{display:grid;gap:4px;padding:12px;background:#f7f9f8;border:1px solid #e1e7e4}.commission-readonly>div.active{background:#e7f3ed;border-color:#a9d3c0}.commission-readonly span{color:#7c661d;font-size:10px;font-weight:700}.commission-readonly strong{font-size:12px}.commission-readonly em{color:#267355;font-size:11px;font-style:normal}.promoter-redemption-list{border:1px solid #e1e7e4}.promoter-redemption-list>div{display:grid;grid-template-columns:110px minmax(120px,1fr) 150px;gap:12px;align-items:center;min-height:44px;padding:8px 12px;border-bottom:1px solid #e8edeb;font-size:10px}.promoter-redemption-list>div:last-child{border-bottom:0}.promoter-redemption-list code{color:#246f52;font-weight:700}.promoter-redemption-list span{color:#617169}.promoter-redemption-list em{color:#7f8d86;font-style:normal;text-align:right}.promoter-public{min-height:100vh;color:#192821;background:#eef3f0}.promoter-public-state{display:grid;place-items:center;align-content:center;gap:12px;color:#617169}.promoter-public-header{display:flex;align-items:center;gap:10px;width:100%;max-width:620px;min-height:70px;margin:0 auto;padding:0 18px}.promoter-public-header img{width:40px;height:40px;border-radius:6px}.promoter-public-header>div{display:grid;gap:2px;flex:1}.promoter-public-header strong{font-size:14px}.promoter-public-header span{color:#718078;font-size:10px}.promoter-public-header em{display:flex;align-items:center;gap:5px;color:#287556;font-size:10px;font-style:normal}.promoter-public-hero{display:grid;justify-items:center;width:100%;max-width:620px;min-height:220px;margin:0 auto;padding:42px 20px;color:#fff;background:#1e694c;text-align:center}.promoter-public-hero>span{display:flex;align-items:center;gap:6px;color:#ffe183;font-size:11px;font-weight:700}.promoter-public-hero h1{margin:16px 0 10px;font-size:30px}.promoter-public-hero p{margin:0;color:#d8ebe2;font-size:11px}.promoter-voucher{display:grid;gap:18px;width:calc(100% - 28px);max-width:520px;margin:18px auto 0;padding:22px;background:#fff;border:1px solid #dce5e1}.promoter-voucher-status{display:flex;align-items:center;gap:10px;padding-bottom:14px;color:#287556;border-bottom:1px solid #e3e9e6}.promoter-voucher-status>div{display:grid;gap:3px}.promoter-voucher-status span{color:#75837c;font-size:10px}.promoter-voucher-status strong{font-size:16px}.promoter-voucher figure{display:grid;justify-items:center;gap:10px;margin:0}.promoter-voucher figure img{width:min(280px,100%);aspect-ratio:1}.promoter-voucher figcaption{padding:7px 14px;color:#173a2c;background:#e4f1eb;font-family:Consolas,monospace;font-size:21px;font-weight:800;letter-spacing:0}.promoter-voucher-meta{display:grid;gap:9px;padding:14px;background:#f6f9f7;border:1px solid #e0e7e3;text-align:center}.promoter-voucher-meta span{display:flex;align-items:center;justify-content:center;gap:6px;color:#67766f;font-size:10px}.promoter-voucher-meta strong{font-size:13px}.promoter-public-footer{display:flex;align-items:flex-start;justify-content:center;gap:7px;width:calc(100% - 28px);max-width:520px;margin:16px auto 0;padding:0 10px 34px;color:#6b7b73;font-size:10px;line-height:1.6}.promoter-public-footer svg{flex:none;color:#287556}@media(max-width:1100px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fission-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-row{grid-template-columns:minmax(200px,1.5fr) .7fr .7fr .8fr}.compact-row .status{display:none}.code-layout{grid-template-columns:220px 1fr}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-230px;width:224px;transition:left .2s}.sidebar.open{left:0;box-shadow:10px 0 30px #08182338}.mobile-menu{display:inline-grid!important}.topbar{padding:0 14px}.topbar p,.today{display:none}.content{padding:14px}.metrics-grid{grid-template-columns:1fr 1fr}.fission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.code-summary{grid-template-columns:1fr 1fr}.code-summary>div:nth-child(2){border-right:0}.code-summary>div:nth-child(-n+2){border-bottom:1px solid #e7ecef}.section-head{align-items:flex-start}.compact-row{grid-template-columns:minmax(180px,1.5fr) .7fr .7fr}.compact-row .progress{display:none}.code-layout{grid-template-columns:1fr}.code-info{border-right:0;border-bottom:1px solid #e2e9e6}.operations-grid{grid-template-columns:1fr}.operation{border-right:0}.settings-list{grid-template-columns:1fr}.settings-list button{border-right:0}.steps{grid-template-columns:1fr;gap:10px}.steps>i{display:none}.authorization{grid-template-columns:42px 1fr;margin:0 18px 20px}.authorization .primary{grid-column:1 / -1}.wecom-form{grid-template-columns:1fr;margin:0 18px 20px}.wecom-actions{grid-column:auto}.wecom-operations{grid-template-columns:1fr;margin:0 18px 20px}.wecom-operations article{border-right:0}.wecom-operations article:nth-last-child(2){border-bottom:1px solid #e7ecef}.settings-message{margin:-6px 18px 20px}.lottery-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.lottery-summary>div:nth-child(2){border-right:0}.lottery-summary>div:nth-child(-n+2){border-bottom:1px solid #e4eaed}.promoter-summary{grid-template-columns:1fr 1fr}.promoter-summary>div:nth-child(2){border-right:0}.promoter-summary>div:nth-child(-n+2){border-bottom:1px solid #e5eaed}.promoter-metrics{grid-template-columns:1fr 1fr}.promoter-metrics>div:nth-child(2){border-right:0}.promoter-metrics>div:nth-child(-n+2){border-bottom:1px solid #dfe6e3}}@media(max-width:560px){.metrics-grid{grid-template-columns:1fr}.fission-grid{grid-template-columns:1fr;padding:12px 14px 16px}.fission-card{min-height:112px}.app-filter{padding:10px 14px 0}.toolbar{align-items:stretch;flex-direction:column}.search-field,.toolbar select{width:100%}.section-head{flex-wrap:wrap}.section-head>:last-child{margin-left:0}.chart{min-height:220px;padding-right:14px}.chart-plot svg{height:175px}.code-row{grid-template-columns:52px 1fr 36px}.code-row>span,.code-row>.switch,.code-row>.code-copy,.code-row>.code-download{display:none}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.app-brief{grid-template-columns:38px 1fr}.app-brief em{grid-column:2;width:max-content}.wizard-body{padding:18px}.modal-backdrop{padding:8px}.wizard,.campaign-detail{max-height:calc(100vh - 16px)}.detail-summary{grid-template-columns:1fr}.detail-summary>div{border-right:0}.detail-summary>div:nth-last-child(2){border-bottom:1px solid #e4eaed}.detail-posters{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-tiers>div{grid-template-columns:38px 96px minmax(0,1fr)}.detail-tiers small{display:none}.campaign-detail>footer{flex-wrap:wrap}.lottery-creator,.lottery-detail{max-height:calc(100vh - 16px)}.lottery-creator-body,.lottery-detail-body{padding:18px}.prize-editor .detail-section-head{align-items:flex-start;flex-wrap:wrap}.prize-editor .detail-section-head .secondary{width:100%;margin-left:0}.prize-editor-head{display:none}.prize-editor-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 34px;gap:6px}.prize-editor-row>input:first-child{grid-column:1 / 3;grid-row:1}.prize-editor-row>input:nth-child(2){grid-column:1;grid-row:2}.prize-editor-row>label{grid-column:2 / 4;grid-row:2}.prize-editor-row>.icon-button{grid-column:3;grid-row:1}.lottery-detail>footer{flex-wrap:wrap}.lottery-prize-list>div{grid-template-columns:minmax(0,1fr) 72px}.lottery-prize-list>div span:last-child{grid-column:1 / -1;text-align:left}.lottery-prize-list .stock-stepper{grid-column:1 / -1}.lottery-draw-list>div{grid-template-columns:minmax(110px,1fr) minmax(90px,1fr) 76px}.lottery-draw-list code{grid-column:1 / 3;text-align:left}.lottery-draw-list em,.lottery-draw-list .draw-redeem{grid-column:3;grid-row:2}.lottery-stage{padding:12px 12px 30px}.lottery-heading h1{font-size:23px}.roulette-shell{width:308px;height:308px}.roulette-wheel{width:274px;height:274px}.roulette-label{left:calc(50% - 40px);width:80px;transform:rotate(var(--wheel-angle)) translateY(-88px);transform-origin:40px 10px}.roulette-label i{font-size:9px}.roulette-trigger{width:94px;height:94px}.code-detail{max-height:calc(100vh - 16px)}.code-detail-overview{grid-template-columns:1fr}.code-detail-qr{width:160px;height:160px;justify-self:center}.code-detail-summary{grid-template-columns:1fr 1fr}.code-detail>footer{flex-wrap:wrap}.code-customer-list>div{grid-template-columns:30px minmax(0,1fr)}.code-customer-list span{grid-column:2;text-align:left}.lottery-prize-pool ul{grid-template-columns:1fr}.lottery-prize-pool li{border-right:0}.wizard-steps{padding:8px}.wizard-steps button{font-size:11px}.fission-public-header em{display:none}.fission-hero{min-height:210px;padding:34px 18px 30px}.fission-hero h1{font-size:26px}.fission-entry,.fission-poster-area{grid-template-columns:1fr;gap:20px;padding:20px}.fission-entry-copy h2,.fission-poster-copy h2{font-size:19px}.fission-qr-frame,.fission-personal-qr{width:100%}.fission-progress-band{grid-template-columns:1fr}.fission-progress-band>div:first-child{min-height:86px;border-right:0;border-bottom:1px solid #496057}.fission-progress-copy{min-height:80px}.fission-actions button{flex:1;min-width:140px}.fission-rewards{padding:18px}.fission-tier-list article{grid-template-columns:42px minmax(0,1fr)}.fission-tier-list em{grid-column:2;text-align:left}.fission-admin-entry{grid-template-columns:1fr}.fission-admin-entry>img{width:150px;height:150px}.promoter-summary{grid-template-columns:1fr}.promoter-summary>div{border-right:0;border-bottom:1px solid #e5eaed}.promoter-summary>div:last-child{border-bottom:0}.promoter-redeem-form{grid-template-columns:1fr;align-items:stretch}.promoter-creator,.promoter-detail{max-height:calc(100vh - 16px)}.promoter-creator-body,.promoter-detail-body{padding:16px}.commission-editor .detail-section-head{align-items:flex-start;flex-wrap:wrap}.commission-editor .detail-section-head .secondary{width:100%;margin-left:0}.commission-tier-list>div{grid-template-columns:38px minmax(0,1fr) 36px}.commission-tier-list label{grid-column:2}.commission-tier-list>div>strong{grid-column:1;grid-row:1 / 3}.commission-tier-list .icon-button{grid-column:3;grid-row:1 / 3;align-self:center}.promoter-code-overview{grid-template-columns:1fr}.promoter-code-overview figure{width:100%}.promoter-metrics{grid-template-columns:1fr 1fr}.promoter-bars{gap:3px;padding-inline:5px}.promoter-redemption-list>div{grid-template-columns:94px minmax(0,1fr)}.promoter-redemption-list em{grid-column:1 / -1;text-align:left}.promoter-public-header em{display:none}.promoter-public-hero{min-height:200px;padding:36px 18px}.promoter-public-hero h1{font-size:25px}.promoter-voucher{padding:18px}}
