*{box-sizing:border-box}body{margin:0;background:#f7f7f5;color:#20211f;font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a:focus-visible,button:focus-visible{outline:3px solid #809b8a;outline-offset:5px}.brand{display:block;font-size:29px;font-weight:750;letter-spacing:-1px}.brand span{display:block;font-weight:400;font-size:9px;letter-spacing:4px;margin-top:8px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600}.muted{color:#777b75;font-size:14px;line-height:1.8}.login{display:grid;grid-template-columns:45% 55%;min-height:100dvh}.login-aside{background:#252923;color:#fff;padding:54px 60px;display:flex;flex-direction:column;justify-content:space-between}.login-aside h1{font-size:clamp(44px,5vw,76px);font-weight:500;line-height:1.35;letter-spacing:2px;margin:25px 0}.login-aside p:not(.eyebrow),.login-aside small{color:#afb5ab;font-size:12px;letter-spacing:1px}.login-form{display:flex;flex-direction:column;justify-content:center;padding:50px 12%;position:relative}.form-wrap{max-width:380px;width:100%;margin:auto}.form-wrap h2{font-size:32px;font-weight:500;margin:18px 0 12px}.form-wrap>.muted{margin-bottom:36px}label{display:block;font-size:12px;margin-bottom:10px}input{background:white;border:1px solid #d6d8d2;border-radius:5px;padding:14px 15px;width:100%;min-width:0;outline:none}input:focus{border-color:#56674c;box-shadow:0 0 0 3px #56674c16}form>button,.code-row button{width:100%;padding:15px;border:0;border-radius:5px;background:#282d25;color:white;margin-top:14px;text-align:left;font-size:13px}form>button span{float:right}.hint{font-size:11px;color:#83877e;line-height:1.9;margin-top:28px}#message{font-size:13px;line-height:1.7;min-height:0}#message.error{color:#a43c35}#message.success{color:#3b6548}#code-form{margin-top:20px}.code-row{display:flex;gap:10px}.code-row button{width:80px;margin:0;text-align:center;flex-shrink:0}.login-form footer{font-size:9px;color:#979b92;letter-spacing:2px;text-align:center;margin-top:60px}.workspace{display:grid;grid-template-columns:236px 1fr;min-height:100dvh}.sidebar{padding:42px 28px;background:#fff;border-right:1px solid #e6e8e1;display:flex;flex-direction:column}.sidebar .brand{font-size:26px}.sidebar nav{margin-top:64px}.sidebar nav a{display:flex;justify-content:space-between;background:#f0f2ec;border-radius:5px;font-size:12px;padding:14px}.sidebar-bottom{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:50px}.avatar{width:33px;height:33px;background:#eceee7;border-radius:50%;display:grid;place-items:center;font-size:12px}.sidebar-bottom strong{font-size:12px}.sidebar-bottom small{display:block;font-size:10px;margin-top:5px;color:#92978b}.logout{margin-left:auto;background:none;border:0;font-size:11px;color:#6b7164}.dashboard{padding:42px clamp(28px,5vw,80px) 24px;display:flex;flex-direction:column}.dashboard header{display:flex;justify-content:space-between;align-items:center;color:#858b7e}.dashboard time{font-size:11px}.greeting{margin:62px 0 46px}.greeting .eyebrow{color:#8c9383}.greeting h1{font-weight:500;font-size:38px;letter-spacing:1px;margin:16px 0 12px}.greeting p{margin-bottom:0}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-head h2{font-size:14px;font-weight:500;margin:0}.section-head .muted{font-size:11px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:white;border:1px solid #e2e6dc;border-radius:7px;padding:26px;min-height:248px;display:flex;flex-direction:column}.module-no{font-size:9px;letter-spacing:1.5px;color:#919989}.card-body{margin:25px 0}.card h3{font-size:22px;font-weight:500;margin:0 0 14px}.card p{font-size:12px;color:#8c9385;line-height:1.9;margin:0}.tag{align-self:flex-start;padding:5px 8px;background:#f3f4ef;color:#909786;border-radius:3px;font-size:10px}.notice{margin-top:24px;border:1px solid #e3e7dc;border-radius:5px;padding:12px 15px;display:flex;align-items:center;gap:9px;color:#787f70;font-size:11px}.notice p{margin:0}.notice>span:last-child{margin-left:auto;color:#8e9585}.dot{width:5px;height:5px;border-radius:50%;background:#80906d}.dashboard footer{display:flex;justify-content:space-between;margin-top:auto;padding-top:48px;font-size:9px;color:#989e90;letter-spacing:1px}.callback{max-width:500px;margin:15vh auto;padding:30px}.callback h1{font-size:24px;font-weight:500;margin-top:60px}.callback p{color:#747b6b}.callback>a:last-child{display:inline-block;margin-top:20px;font-size:13px;text-decoration:underline}@media(min-width:900px) and (max-height:780px){.greeting{margin:36px 0 30px}.card{min-height:220px}.dashboard footer{padding-top:28px}}@media(max-width:1000px){.workspace{grid-template-columns:190px 1fr}.sidebar{padding:32px 20px}.card{padding:20px}.cards{gap:10px}.login-aside{padding:40px}.dashboard{padding:32px}.greeting h1{font-size:32px}}@media(max-width:740px){.login{grid-template-columns:1fr}.login-aside{min-height:200px;padding:28px}.login-aside>div:last-of-type{margin-top:25px}.login-aside h1{font-size:30px;margin:15px 0}.login-aside h1 br,.login-aside small,.login-aside .eyebrow{display:none}.login-form{padding:45px 28px}.form-wrap h2{font-size:28px}.workspace{display:block}.sidebar{padding:22px 24px;display:flex;flex-direction:row;align-items:center;border-bottom:1px solid #e6e8e1}.sidebar .brand{font-size:23px}.sidebar nav{display:none}.sidebar-bottom{padding:0;margin:0 0 0 auto}.sidebar-bottom .avatar,.sidebar-bottom small{display:none}.logout{margin-left:12px}.dashboard{padding:30px 24px}.greeting{margin:40px 0 30px}.greeting h1{font-size:30px}.cards{grid-template-columns:1fr}.card{min-height:180px}.card-body{margin:20px 0}.card p br{display:none}.notice{flex-wrap:wrap}.notice>span:last-child{margin-left:14px}.dashboard footer{padding-top:32px;font-size:8px}.login-form footer{margin-top:45px}}.billing{max-width:1240px;margin:auto;padding:35px 32px 50px}.billing-head,.billing-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.billing-head{font-size:12px;color:#747b6b}.billing-head span{font-size:10px;letter-spacing:2px}.billing-title{margin:30px 0 20px}.billing-title h1{font-size:34px;font-weight:500;margin:12px 0}.billing-title>a{font-size:12px}.billing-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.billing-panel{background:white;border:1px solid #e2e6dc;border-radius:7px;padding:26px;min-width:0}.billing-panel h2{font-size:18px;font-weight:500;margin:0 0 22px}.billing-panel fieldset{border:0;padding:0;margin:0;min-width:0}.billing-panel label{margin-top:18px}.billing-panel label:first-child{margin-top:0}select,textarea{font:inherit;width:100%;border:1px solid #d6d8d2;background:white;border-radius:5px;padding:12px;color:#20211f}textarea{resize:vertical;min-height:80px}select:focus,textarea:focus{outline:2px solid #809b8a;outline-offset:2px}.billing-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.customer-details{font-size:12px;line-height:1.8;color:#747b6b;background:#f7f8f5;margin-top:12px;padding:12px;white-space:pre-line;overflow-wrap:anywhere}.amount-box{background:#f1f4ee;border-radius:5px;padding:18px;margin:20px 0}.amount-box span,.amount-box small{display:block;color:#737d69;font-size:11px}.amount-box strong{display:block;font-size:32px;margin:10px 0;font-weight:500}.billing-panel button{padding:13px 16px;border:0;border-radius:4px;background:#282d25;color:white;font-size:13px}.billing-panel fieldset>button,.billing-panel #confirm-invoice{width:100%}.billing-panel .secondary{background:#f1f3ed;color:#36432e;margin:8px 8px 0 0;border:1px solid #e2e6dc;font-size:12px}.billing-panel .hint{margin:12px 0;font-size:11px}.billing-panel dl{margin:0}.billing-panel dt{font-size:11px;color:#858c7d;margin:17px 0 5px}.billing-panel dd{margin:0;font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.billing-panel dd.total{font-size:28px;font-weight:600}.billing-panel .check-line{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.8;margin:22px 0 16px}.check-line input{width:16px;flex-shrink:0;margin-top:3px}.record-status{font-size:13px;font-weight:600;background:#f1f4ee;padding:12px}.billing-records{margin-top:22px}.billing-records h2{margin:0}.table-scroll{overflow-x:auto}.billing table{width:100%;border-collapse:collapse;font-size:12px}.billing th{text-align:left;color:#838b79;font-weight:400;padding:14px 10px;border-bottom:1px solid #ddd}.billing td{padding:16px 10px;border-bottom:1px solid #eee;vertical-align:top;line-height:1.7}.billing td small{display:block;color:#858c7d;max-width:320px;overflow-wrap:anywhere}.billing [hidden]{display:none!important}.billing #message{min-height:24px;margin:0 0 14px}@media(max-width:740px){.billing{padding:25px 18px}.billing-grid{grid-template-columns:1fr}.billing-panel{padding:20px}.billing-title h1{font-size:28px}.billing-head span{font-size:8px}.billing-row{grid-template-columns:1fr}.billing-title{margin:26px 0 18px}}