:root{--green:#153f37;--accent:#17715c;--paper:#f5f4ef;--line:#dfe4df;--ink:#152b27}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Microsoft YaHei",sans-serif}button,input,select,textarea{font:inherit}.hidden{display:none!important}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.brand{background:var(--green);color:white;padding:10vh 9vw}.seal{width:48px;height:48px;border:1px solid #91b8ad;display:grid;place-items:center;font:26px Georgia;margin-bottom:14vh}.brand p,.login-card>small,header>div>small{font-size:10px;letter-spacing:.18em;font-weight:bold}.brand h1{font:500 clamp(44px,5vw,72px)/1.12 Georgia,"Songti SC",serif;margin:25px 0}.brand span{color:#b4cbc4}.login-card{align-self:center;width:min(390px,80%);margin:auto}.login-card h2{font:500 38px Georgia;margin:8px 0}.login-card p{color:#74827f;font-size:13px;margin-bottom:28px}.login-card label,.grid label,.filters label{display:grid;gap:7px;font-size:12px;font-weight:bold;margin:17px 0}.login-card input,.grid input,.grid select,.grid textarea,.filters input,.filters select{border:1px solid #cad3cf;background:white;border-radius:7px;padding:13px}.login-card button,.primary{border:0;background:var(--accent);color:white;padding:14px 18px;border-radius:7px;font-weight:bold;cursor:pointer}.login-card button{width:100%;display:flex;justify-content:space-between;margin-top:22px}.hint{background:#edf1ee;padding:12px;margin-top:20px;border-radius:7px;font-size:11px;line-height:1.7}.error{color:#a64235;font-size:12px;margin-top:12px}.app{min-height:100vh;display:flex}.app aside{position:fixed;width:225px;height:100vh;background:var(--green);color:white;padding:28px 22px;display:flex;flex-direction:column}.logo{display:flex;align-items:center;gap:12px}.logo i{font-style:normal;border:1px solid #85aa9f;width:38px;height:38px;display:grid;place-items:center}.app nav{margin-top:55px}.app nav a{display:block;color:#b5ccc5;padding:13px;margin:5px 0;border-radius:7px;cursor:pointer}.app nav a.active{background:#ffffff14;color:white}.identity{margin-top:auto;border-top:1px solid #ffffff20;padding-top:18px}.identity b,.identity small{display:block}.identity small{color:#94b1a9;font-size:10px;margin:5px 0 12px}.identity button{background:transparent;color:#b5ccc5;border:0;padding:0;cursor:pointer}.content{margin-left:225px;width:calc(100% - 225px);padding:40px 5vw}.content>header{display:flex;justify-content:space-between;align-items:center}.content h1{font:500 35px Georgia,"Songti SC",serif;margin:7px 0}.filters{display:flex;align-items:end;gap:15px;margin:25px 0}.filters label{margin:0}.filters input,.filters select{padding:9px}.filters button{padding:10px 15px;border:1px solid var(--line);background:white;border-radius:6px}.cards{display:grid;grid-template-columns:1fr 1.1fr .8fr;gap:15px}.cards article,.records{background:white;border:1px solid var(--line);border-radius:9px;padding:23px}.cards small{font-weight:bold}.cards strong{font:500 34px Georgia;display:block;margin:15px 0}.cards span{color:#798783;font-size:11px}.cards article:nth-child(2) p{display:flex;justify-content:space-between;font-size:11px;border-bottom:1px solid #edf0ed;padding-bottom:7px}.cards article:nth-child(2) p:last-child{border:0}.warning{background:#fffaf0!important;border-color:#eadbbf!important}.records{margin-top:16px;padding:0;overflow:hidden}.records>div:first-child{padding:20px 24px}.records h2{font:500 21px Georgia;margin:0}.records p{font-size:11px;color:#778582}.table{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:850px}th{text-align:left;background:#f0f2ee;color:#687671;font-size:10px;padding:12px 20px}td{padding:16px 20px;border-top:1px solid #edf0ed;font-size:12px;vertical-align:top}td b,td small,td a{display:block}td small,td a{font-size:10px;color:#7e8c88;margin-top:5px}td a{color:var(--accent)}.tag,.status{background:#e3eee9;color:#2b6255;padding:5px 8px;border-radius:4px;font-size:10px}.status.risk{background:#f4e3b8;color:#7e5915}mark{display:block;background:#fff1ca;color:#825e16;padding:7px;margin-top:8px;font-size:10px}.empty{text-align:center;padding:50px;color:#899590}.modal{position:fixed;inset:0;background:#102d28aa;display:flex;justify-content:flex-end;z-index:5}.drawer{height:100%;width:min(650px,100%);background:#fafaf7;padding:30px 38px;overflow:auto}.drawer header{display:flex;justify-content:space-between}.drawer h2{font:500 30px Georgia;margin:5px 0 20px}.drawer header button{border:0;background:transparent;font-size:28px}.upload{height:115px;border:1px dashed #94aaa3;background:#eef4f0;border-radius:8px;display:grid;place-items:center;align-content:center;gap:7px;font-weight:bold}.upload input{max-width:80%}.upload small{color:#7c8a86}.grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.grid .wide,.wide{grid-column:1/-1}.grid textarea{height:70px}.grid em{color:#a8473c;font-style:normal}.auto-check{background:#edf2ef;padding:12px;border-radius:6px;font-size:10px;margin-top:18px}.drawer footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.drawer footer button{border:1px solid #ccd5d1;padding:12px 18px;border-radius:6px}.drawer footer .primary{border:0}.primary:disabled{opacity:.5}@media(max-width:850px){.brand{display:none}.login{grid-template-columns:1fr}.app aside{width:70px;padding:25px 10px}.logo b,.app nav a:not(.active),.identity small{display:none}.content{margin-left:70px;width:calc(100% - 70px);padding:25px}.cards{grid-template-columns:1fr}.filters{flex-wrap:wrap}}@media(max-width:560px){.grid{grid-template-columns:1fr}.grid .wide,.wide{grid-column:auto}.content h1{font-size:27px}.content>header .primary{font-size:0}.content>header .primary:first-letter{font-size:18px}.filters{display:none}.drawer{padding:22px}}
