:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#17223a;background:#f4f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,p{margin-top:0}.muted,.page-header p,.card p{color:#71809a}.shell{display:grid;grid-template-columns:246px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:26px 18px;background:#111b33;color:#fff;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 28px}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,#4f8cff,#755cff);box-shadow:0 10px 25px #1c45a866}.brand strong,.brand small,td small,.permission-groups small,.session-list small{display:block}.brand small{margin-top:3px;color:#91a0bf}.nav-label{display:block;padding:10px 12px;color:#72809f;font-size:11px;letter-spacing:.14em}.nav-item{display:block;width:100%;padding:12px 14px;margin:2px 0;border-radius:10px;color:#b8c3dc}.nav-item:hover,.nav-item.active{color:#fff;background:#263654}.nav-item span{display:inline-block;width:26px;color:#80a7ff}.sidebar-profile{margin-top:auto;padding:14px;border:1px solid #33425f;border-radius:14px;background:#172440;display:flex;justify-content:space-between;align-items:center}.sidebar-profile small{display:block;color:#91a0bf;margin-top:3px}.sidebar-profile button{border:0;background:none;color:#91a0bf}.content{width:calc(100% - 32px);min-width:0;margin:0 auto;padding:24px 0 32px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:25px}.page-header h1{margin:0;font-size:30px;letter-spacing:-.04em}.page-header p:not(.eyebrow){margin:8px 0 0}.eyebrow,.section-index{margin:0 0 7px;color:#4f7fea;font-size:11px;font-weight:800;letter-spacing:.15em}.card{padding:24px;border:1px solid #e3e8f1;border-radius:16px;background:#fff;box-shadow:0 10px 34px #23365b0e}.card h2{font-size:18px}.card-title,.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.settings{display:grid;gap:18px}.field{display:grid;gap:8px;color:#34415a;font-size:13px;font-weight:650}.field input,.toolbar input{width:100%;padding:11px 12px;border:1px solid #d8dfeb;border-radius:9px;outline:none;background:#fff}.field input:focus,.toolbar input:focus{border-color:#5f8def;box-shadow:0 0 0 3px #5f8def1c}.field small{color:#8793a9;font-weight:400}.primary,.ghost,.button{min-height:40px;padding:0 17px;border-radius:9px;border:0;font-weight:700;display:inline-grid;place-items:center}.primary{color:#fff;background:#356fe1;box-shadow:0 8px 18px #356fe138}.primary:disabled{opacity:.6}.ghost{color:#40506b;background:#edf1f7}.wide{width:100%}.notice{padding:13px 16px;margin:14px 0;border-radius:10px;font-size:14px}.notice.error{color:#a63849;background:#fff0f2}.notice.success{color:#147054;background:#eaf8f2}.notice.warning{color:#8a5a10;background:#fff7df;border:1px solid #f2dc9d}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}.toolbar input{max-width:300px}.toolbar span{margin-left:auto;color:#71809a;font-size:13px}.table-card{padding:0;overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:14px 15px;text-align:left;border-bottom:1px solid #edf0f5;vertical-align:middle}th{color:#758198;background:#fafbfe;font-weight:650;white-space:nowrap}td small{color:#8994a8;margin-top:4px;max-width:300px}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.row-actions button,.text-danger{border:0;background:none;color:#356fe1;padding:4px}.row-actions .text-danger,.text-danger{color:#d14355}.tag{display:inline-block;padding:4px 8px;margin:2px;border-radius:999px;color:#176c54;background:#e7f6ef;font-size:11px}.tag.danger{color:#aa3b4b;background:#ffedf0}.tag.neutral{color:#56637a;background:#edf1f7}.form-grid,.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}.role-checks{border:1px solid #e1e6ef;border-radius:10px;padding:14px}.role-checks label{margin-right:18px}.role-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.role-grid .row-actions{margin-top:18px}.permission-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.permission-groups fieldset{border:1px solid #e1e6ef;border-radius:12px}.permission-groups label{display:flex;gap:9px;padding:8px}.permission-groups small{color:#8490a5}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px}.metric-grid article{padding:20px;border-radius:15px;background:linear-gradient(135deg,#fff,#eef3ff);border:1px solid #e0e7f2}.metric-grid span{display:block;color:#77849b;font-size:13px}.metric-grid strong{display:block;margin-top:8px;font-size:27px}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.summary div{padding:18px 20px;border-radius:14px;background:#eaf1ff}.summary span{display:block;color:#6d7c99;font-size:12px}.summary strong{display:block;margin-top:7px;font-size:19px}.section-title p{margin-bottom:0}.panel{margin-top:20px;padding:20px;border:1px solid #e6ebf3;border-radius:13px;background:#f8faff}.switch input{position:absolute;opacity:0}.switch span{display:block;width:46px;height:26px;padding:3px;border-radius:999px;background:#ccd4e1}.switch span:after{content:"";display:block;width:20px;height:20px;border-radius:50%;background:#fff;transition:.2s}.switch input:checked+span{background:#4f7fea}.switch input:checked+span:after{transform:translate(20px)}.checks{display:flex;gap:18px;flex-wrap:wrap}.check{display:flex;align-items:center;gap:7px;font-size:13px}.warning-text{color:#a25a25}.actions{position:sticky;bottom:16px;display:flex;justify-content:flex-end;gap:10px;padding:12px;border:1px solid #dde4ef;border-radius:14px;background:#fffffff0}.two-columns{display:grid;grid-template-columns:1fr 1.4fr;gap:18px}.session-list article{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #edf0f5}.center-page{min-height:100vh;display:grid;place-items:center;padding:30px}.password-card{width:min(460px,100%);display:grid;gap:16px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;background:#eaf1ff}.login-hero{padding:55px clamp(35px,8vw,130px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 70% 25%,#abc6ff 0,transparent 35%),linear-gradient(145deg,#14213d,#263d70);color:#fff}.login-hero h1{max-width:560px;font-size:48px}.login-hero p:not(.eyebrow){color:#b7c5df;line-height:1.8}.login-card{width:min(450px,calc(100% - 50px));margin:auto;padding:40px;display:grid;gap:18px;border-radius:20px;background:#fff;box-shadow:0 24px 60px #294b8b22}.login-card h2{margin:0;font-size:27px}.login-card>p:not(.eyebrow),.login-hint{color:#7b879c;line-height:1.6}.status-pill{display:flex;gap:8px;align-items:center;padding:9px 13px;border-radius:999px;color:#16775b;background:#e4f6ef;font-size:13px}.status-pill span{width:7px;height:7px;border-radius:50%;background:#21b485}.truncate{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.metric-grid{grid-template-columns:repeat(2,1fr)}.role-grid,.permission-groups,.two-columns,.login-page{grid-template-columns:1fr}.login-hero{display:none}}@media(max-width:700px){.shell{display:block}.sidebar{position:static;height:auto}.sidebar nav{display:flex;overflow:auto}.nav-label{display:none}.nav-item{min-width:max-content}.sidebar-profile{display:none}.content{width:calc(100% - 26px);padding:26px 0}.page-header{align-items:flex-start}.form-grid,.fields,.summary{grid-template-columns:1fr}.full{grid-column:auto}.metric-grid{grid-template-columns:1fr 1fr}.card{padding:18px}}.table-action{color:#356fe1;padding:4px}.discount-boundary{font-size:15px;border-width:2px!important}.discount-priority{color:#31527d;background:#eaf1ff;border:1px solid #cedcff}.discount-platform{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;margin-bottom:18px}.discount-platform h2,.discount-user-panel h2{margin-bottom:6px}.discount-input{display:flex;align-items:center;border:1px solid #d8dfeb;border-radius:10px;overflow:hidden;background:#fff}.discount-input input{width:110px;padding:11px;border:0;outline:none;text-align:right;font-weight:750}.discount-input span{padding-right:12px;color:#71809a}.discount-user-panel{margin-bottom:18px}.discount-user-search{justify-content:flex-start}.user-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.user-options button{padding:12px 14px;text-align:left;border:1px solid #dfe5ef;border-radius:10px;background:#f8faff}.user-options button:hover{border-color:#6690ec;background:#eef4ff}.user-options small{display:block;margin-top:4px;color:#7d8aa1}.pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:18px}@media(max-width:700px){.discount-platform{grid-template-columns:1fr}.discount-input{width:max-content}.user-options{grid-template-columns:1fr}}.password-input{position:relative}.field .password-input input{min-height:44px;padding-right:52px}.password-input button{position:absolute;top:0;bottom:0;right:0;width:44px;padding:10px;border:0;border-radius:0 9px 9px 0;color:#71809a;background:transparent;display:grid;place-items:center;touch-action:manipulation}.password-input button:hover{color:#356fe1;background:#edf3ff}.password-input button:focus-visible{outline:2px solid #5f8def;outline-offset:-2px}.password-input svg{width:20px;height:20px;pointer-events:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.discount-add-panel{margin-bottom:18px}.discount-add-panel h2{margin-bottom:6px}.catalog-results{display:grid;gap:8px}.catalog-results>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:11px 13px;border:1px solid #e1e7f0;border-radius:10px}.catalog-results small{display:block;margin-top:3px;color:#7d8aa1}@media(max-width:700px){.catalog-results>div{grid-template-columns:1fr auto}}.usage-filter{margin-bottom:16px}.field select{width:100%;padding:11px 12px;border:1px solid #d8dfeb;border-radius:9px;background:#fff}.usage-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.usage-summary{grid-template-columns:repeat(4,1fr);margin-bottom:16px}.usage-table{max-height:620px}.usage-table details{min-width:180px}.usage-table summary{cursor:pointer;color:#356fe1}.usage-table pre{max-width:360px;max-height:180px;overflow:auto;white-space:pre-wrap}.export-tasks{margin-top:28px}.export-tasks .card-title{margin-bottom:14px}@media(max-width:700px){.usage-summary{grid-template-columns:1fr 1fr}.usage-actions{flex-wrap:wrap}}.content.content-wide{width:calc(100% - 32px);max-width:none;padding:24px 0 44px}.content-wide .page-header{margin-bottom:14px}.compact-page-header{align-items:center}.header-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.usage-filter-compact{padding:13px 16px}.usage-filter-main{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.compact-field{display:grid;flex:1;min-width:160px;gap:5px;color:#34415a;font-size:12px;font-weight:650}.compact-field>span{white-space:nowrap}.compact-field input,.compact-field select{width:100%;height:38px;padding:8px 10px;border:1px solid #d8dfeb;border-radius:8px;outline:none;background:#fff}.compact-field input:focus,.compact-field select:focus{border-color:#5f8def;box-shadow:0 0 0 3px #5f8def1c}.compact-time{flex:1.8;min-width:390px}.compact-time>div{display:flex;align-items:center;gap:7px}.compact-time input{min-width:0}.compact-time b{color:#8a96aa;font-size:12px;font-weight:500}.compact-short{flex:.65;min-width:130px}.compact-filter-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.compact-filter-actions .primary,.compact-filter-actions .ghost{min-height:38px;padding:0 14px;white-space:nowrap}.usage-filter-extra{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #edf0f5}.usage-summary{gap:10px;margin-bottom:12px}.usage-summary div{padding:10px 14px;border-radius:10px}.usage-summary strong{margin-top:3px;font-size:17px}.usage-table{max-height:calc(100vh - 330px);min-height:360px}.usage-table th,.usage-table td{padding:10px 12px}.export-task-page .table-wrap{max-height:calc(100vh - 180px)}.export-task-page th,.export-task-page td{padding:11px 12px}.task-filter-cell{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#596980}.compact-button{min-height:34px;padding:0 12px}@media(max-width:1250px){.usage-filter-extra{grid-template-columns:repeat(3,minmax(140px,1fr))}.compact-filter-actions{width:100%;justify-content:flex-end}}@media(max-width:700px){.content.content-wide{width:calc(100% - 26px);padding:20px 0 36px}.compact-page-header{align-items:flex-start}.header-actions{flex-wrap:wrap}.compact-time{min-width:100%}.compact-field,.compact-short{min-width:calc(50% - 6px)}.compact-filter-actions{justify-content:flex-start;overflow:auto}.usage-filter-extra{grid-template-columns:1fr 1fr}.usage-table{max-height:none;min-height:0}.export-task-page .table-wrap{max-height:none}}.discount-platform{padding:16px 20px;gap:16px}.discount-platform p:last-child{margin-bottom:0}.discount-platform>strong{font-size:24px;font-variant-numeric:tabular-nums}.header-actions .button,.header-actions button{white-space:nowrap}td.row-actions{display:table-cell}td.row-actions>a,td.row-actions>button{display:inline-block;margin-right:6px}.toolbar select{min-height:42px;padding:0 12px;border:1px solid #d8dfeb;border-radius:9px;background:#fff}.page-header>div:first-child{min-width:0}@media(max-width:700px){.page-header{flex-wrap:wrap}.header-actions{justify-content:flex-start}.discount-platform{grid-template-columns:minmax(0,1fr) auto}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#101a31a6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.export-field-dialog{width:min(980px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:24px;border-radius:18px;background:#fff;box-shadow:0 28px 80px #0a142d55}.export-field-dialog>header{display:flex;justify-content:space-between;gap:24px}.export-field-dialog h2{margin:0;font-size:24px}.export-field-dialog header p:not(.eyebrow){margin:7px 0 0;color:#71809a}.modal-close{width:38px;height:38px;border:0;border-radius:10px;background:#edf1f7;color:#52617a;font-size:25px;line-height:1}.export-formula{margin-bottom:10px}.export-field-groups{display:grid;grid-template-columns:1fr 1fr;gap:16px}.export-field-groups fieldset{min-width:0;padding:15px;border:1px solid #dfe5ef;border-radius:13px}.export-field-groups legend{width:100%;padding:0 4px;display:flex;justify-content:space-between;align-items:center;font-weight:800}.export-field-groups legend small{color:#7d8aa1;font-size:12px;font-weight:500}.field-shortcuts{display:flex;gap:8px;padding:4px 0 10px}.field-shortcuts button{padding:4px 8px;border:0;border-radius:7px;color:#356fe1;background:#eef4ff;font-size:12px}.export-field-option{display:flex;align-items:flex-start;gap:9px;padding:8px 5px;border-top:1px solid #f0f2f6;font-size:13px}.export-field-option input{margin-top:3px}.export-field-option span{min-width:0;flex:1}.export-field-option small{display:block;margin-top:3px;color:#a66b1d;font-size:11px}.export-field-option b{padding:2px 6px;border-radius:999px;color:#985d10;background:#fff2cf;font-size:10px;white-space:nowrap}.export-empty-note{margin:14px 0;color:#8a5a10;font-size:13px}.export-split-option{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:12px 0;padding:12px 14px;border:1px solid #dfe5ef;border-radius:11px;background:#f8faff}.export-split-option span{display:grid;gap:4px}.export-split-option small{color:#71809a;font-size:12px}.export-split-option select{min-width:190px;padding:9px 11px;border:1px solid #cfd8e7;border-radius:8px;background:#fff}.export-field-dialog>footer{display:flex;justify-content:flex-end;gap:10px;padding-top:15px;border-top:1px solid #edf0f5}.task-format{margin-left:6px;text-transform:uppercase}.task-fields-cell{max-width:300px}.task-fields-cell small{white-space:normal}.compact-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.time-presets{display:inline-flex;gap:3px}.time-presets button{padding:2px 7px;border:0;border-radius:5px;color:#66748d;background:#edf1f7;font-size:11px;font-weight:600}.time-presets button:hover{color:#356fe1;background:#e8efff}.time-presets button.active{color:#fff;background:#356fe1}@media(max-width:760px){.modal-backdrop{padding:10px}.export-field-dialog{max-height:calc(100vh - 20px);padding:17px}.export-field-groups{grid-template-columns:1fr}.export-field-dialog>header{gap:12px}.export-split-option{align-items:stretch;flex-direction:column}.export-split-option select{width:100%}}
