:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#152d27;background:#f3f6f4}*{box-sizing:border-box}body{margin:0;min-width:1100px}button,input,select{font:inherit}button{cursor:pointer}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#eef7e9,transparent 35%),#12362f}.login-card{width:420px;padding:42px;background:#fff;border-radius:22px;box-shadow:0 30px 80px #061b164d}.brand-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:#a7d62e;font-size:28px;font-weight:800;margin-bottom:22px}.eyebrow{color:#6f8e2a;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1{margin:7px 0 12px;font-size:30px;letter-spacing:-.03em}header>p:last-child{color:#64766f;margin-top:0}label{display:grid;gap:7px;font-size:14px;font-weight:650;margin:18px 0}input,select{width:100%;padding:12px 14px;border:1px solid #d7e0dc;border-radius:10px;outline:none;background:#fff}input:focus,select:focus{border-color:#6e9829;box-shadow:0 0 0 3px #a7d62e26}.login-card button,.form-card button{width:100%;padding:13px;border:0;border-radius:10px;background:#173f36;color:#fff;font-weight:700}.login-card small{display:block;margin-top:16px;color:#87958f;text-align:center}.error{color:#b62727;background:#fff0f0;padding:10px 12px;border-radius:8px}.shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}aside{position:sticky;top:0;height:100vh;padding:24px 18px;background:#12362f;color:#fff;display:flex;flex-direction:column}.logo{display:flex;align-items:center;gap:12px;padding:0 8px 26px;border-bottom:1px solid #ffffff1c}.logo>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#a7d62e;color:#15362f;font-size:22px;font-weight:850}.logo div{display:grid;gap:2px}.logo b{font-size:18px}.logo small{color:#b3c6bf}nav{display:grid;gap:5px;padding-top:22px}nav button{border:0;background:transparent;color:#c9d8d3;padding:11px 13px;text-align:left;border-radius:9px}nav button.active,nav button:hover{background:#ffffff12;color:#fff}.account{margin-top:auto;border-top:1px solid #ffffff1c;padding:18px 8px 0;display:grid;gap:4px}.account small{color:#9fb7af}.account button{margin-top:8px;border:0;background:transparent;color:#cbd9d5;padding:0;text-align:left}.content{padding:42px 48px 70px;overflow:hidden}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}.metric{background:#fff;border-radius:16px;padding:22px;box-shadow:0 7px 26px #15352d0b}.metric span{color:#667a73}.metric strong{display:block;font-size:34px;margin:13px 0 4px}.metric small{color:#96a29e}.notice,.form-card{margin-top:24px;padding:22px 24px;border-radius:16px;background:#ecf4dd;border:1px solid #dbe9bd}.notice p{margin-bottom:0;color:#587064}.toolbar{display:flex;justify-content:space-between;align-items:center;margin:26px 0 12px;color:#667970}.toolbar button{border:1px solid #d5dfdb;border-radius:8px;padding:8px 12px;background:#fff}.table-wrap{overflow-x:auto;background:#fff;border:1px solid #e2e8e5;border-radius:14px}table{border-collapse:collapse;width:100%;min-width:850px}th,td{padding:14px 16px;border-bottom:1px solid #edf1ef;text-align:left;font-size:13px;white-space:nowrap}th{background:#f7f9f8;color:#63766e;font-weight:700}tr:last-child td{border-bottom:0}.actions{display:flex;gap:7px}.actions button{border:1px solid #cfdad5;background:#fff;color:#294c42;border-radius:7px;padding:6px 9px}.actions button.danger{color:#a33636;border-color:#efd0d0}.status{display:inline-block;padding:4px 9px;border-radius:999px;background:#edf3f0;color:#48645a}.s-paid,.s-active,.s-issued,.s-qualified{background:#e8f6d8;color:#496d17}.s-unpaid,.s-reviewing,.s-payment_review,.s-new{background:#fff3d9;color:#8a5b00}.empty{padding:44px;text-align:center;color:#8e9b96}.form-card{max-width:680px;background:#fff;border-color:#e2e8e5}.message{color:#496d17;background:#eef8e4;padding:10px 12px;border-radius:8px}
