:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#242a31;background:#f5f6f8;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.muted{color:#7a828d}.tiny{font-size:12px;line-height:1.6}.eyebrow{font-size:10px;letter-spacing:.18em;color:#9b815f;font-weight:700}.login-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;background:radial-gradient(ellipse at 50% 0,#fff 0,#f6f3ee 46%,#eef0f2 100%)}.login-brand{display:flex;gap:13px;align-items:center;margin-bottom:30px}.brand-mark{width:48px;height:48px;display:grid;place-items:center;background:#22272e;color:#d7bd93;font-family:Georgia,serif;font-size:28px;font-style:italic;border-radius:12px}.brand-name{letter-spacing:.2em;font-family:Georgia,serif;font-size:22px}.brand-sub{font-size:9px;letter-spacing:.16em;color:#8b9098;margin-top:6px}.login-card{width:min(100%,420px);background:#fff;border:1px solid #e9e7e2;border-radius:18px;padding:34px;box-shadow:0 20px 70px #252a310b}.login-card h1{font-size:27px;font-weight:600;margin:12px 0 8px}.login-card form{margin-top:28px}.login-card label,.field{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;margin-bottom:17px}.login-card input,.field input,.field select,.field textarea,.toolbar input,.toolbar select{width:100%;border:1px solid #dfe2e6;border-radius:9px;padding:12px;background:#fff;outline:none;color:#242a31}.login-card input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#b59b76;box-shadow:0 0 0 3px #b59b761c}.primary{border:0;background:#292e34;color:white;padding:12px 18px;border-radius:9px;font-weight:600}.primary:hover{background:#454b52}.full{width:100%;margin-top:5px}.error{color:#b42318;font-size:12px;min-height:18px}.login-foot{margin-top:25px;font-size:10px;letter-spacing:.15em;color:#9ca1a8}.app-shell{min-height:100vh;display:grid;grid-template-columns:246px minmax(0,1fr)}.sidebar{background:#20252b;color:#e9ebed;min-height:100vh;padding:24px 15px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.side-brand{display:flex;align-items:center;gap:10px;padding:0 10px 28px;border-bottom:1px solid #ffffff17}.brand-mark.small{width:36px;height:36px;border-radius:9px;font-size:22px}.side-brand strong{display:block;font-family:Georgia,serif;letter-spacing:.15em;font-size:13px}.side-brand small{display:block;font-size:8px;letter-spacing:.12em;color:#9ca1a8;margin-top:5px}.workspace-tag{font-size:11px;color:#8f969e;padding:22px 12px 9px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.nav-item{border:0;background:transparent;color:#b9bec5;text-align:left;padding:12px;border-radius:8px;font-size:13px;display:flex;gap:11px;align-items:center}.nav-item .nav-icon{width:18px;text-align:center;color:#c5a779}.nav-item:hover,.nav-item.active{background:#ffffff12;color:#fff}.nav-item.active{box-shadow:inset 3px 0 #c8ad84}.side-bottom{margin-top:auto;border-top:1px solid #ffffff17;padding:18px 8px 0;display:flex;align-items:center;gap:8px;font-size:11px;color:#aeb4bb}.status-dot{width:7px;height:7px;border-radius:50%;background:#69bd93}.link-button{margin-left:auto;color:#c7b08c;background:transparent;border:0;font-size:11px}.main{padding:0 34px;min-width:0}.topbar{min-height:110px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e7ea;margin-bottom:26px}.topbar h1{font-size:25px;font-weight:600;margin:7px 0}.profile{display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e8dfd0;color:#68563d;font-weight:700}.profile strong,.profile small{display:block;font-size:12px}.profile small{color:#858c95;margin-top:5px}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.page-intro h2{font-size:19px;margin:0 0 7px}.page-intro p{font-size:12px;color:#858c95;margin:0}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.metric,.panel,.table-panel{background:#fff;border:1px solid #e8eaed;border-radius:12px}.metric{padding:19px}.metric .label{font-size:12px;color:#7b838d}.metric .value{font-size:27px;font-weight:600;margin-top:15px;letter-spacing:-.03em}.metric .hint{font-size:11px;color:#9a9fa6;margin-top:7px}.panel{padding:22px;margin-bottom:18px}.panel h3{font-size:14px;margin:0 0 16px}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.module-card{border:1px solid #e8eaed;background:#fff;border-radius:10px;text-align:left;padding:18px}.module-card:hover{border-color:#c7b08c;transform:translateY(-1px)}.module-card .icon{font-size:18px}.module-card strong{display:block;margin:12px 0 6px;font-size:13px}.module-card span{font-size:11px;color:#8a9098}.toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:14px}.toolbar input{max-width:300px}.table-panel{overflow:auto}table{width:100%;border-collapse:collapse;min-width:640px}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid #f0f1f3;font-size:12px;white-space:nowrap}th{color:#818893;background:#fafbfc;font-weight:600}td{color:#353b43}tbody tr:last-child td{border-bottom:0}.empty{text-align:center;padding:40px;color:#8a9098}.notice{background:#fff6e5;border:1px solid #efdfbc;color:#72582d;padding:13px 16px;border-radius:9px;margin-bottom:18px;font-size:12px}.toast{position:fixed;bottom:24px;right:24px;background:#252a31;color:#fff;padding:13px 18px;border-radius:9px;box-shadow:0 8px 30px #0002;font-size:13px;z-index:20}.modal-backdrop{position:fixed;inset:0;background:#171b20a6;display:grid;place-items:center;padding:20px;z-index:10}.modal{width:min(100%,600px);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:25px}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-head h3{margin:0;font-size:18px}.close{border:0;background:#f1f2f4;border-radius:7px;padding:7px 11px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.secondary{border:1px solid #dfe2e6;background:white;border-radius:9px;padding:11px 16px}footer{padding:30px 0;color:#9a9fa6;font-size:10px;letter-spacing:.04em}footer span{margin:0 7px}.badge{display:inline-block;padding:5px 8px;border-radius:20px;background:#eef1f3;color:#5c6670;font-size:10px}.notice.error-notice{background:#fff0ef;color:#9e3028;border-color:#f2d1ce}@media(max-width:1000px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.main{padding:0 22px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;min-height:0;padding:14px}.side-brand{padding-bottom:14px}.workspace-tag,.side-bottom{display:none}.sidebar nav{display:flex;flex-direction:row;overflow-x:auto;padding-top:12px}.nav-item{white-space:nowrap;padding:10px}.main{padding:0 15px}.topbar{min-height:88px;margin-bottom:20px}.topbar h1{font-size:21px}.profile{gap:7px}.profile small{display:none}.metrics{gap:9px}.metric{padding:14px}.metric .value{font-size:23px}.module-grid{grid-template-columns:1fr}.page-intro{align-items:flex-start;flex-direction:column}.toolbar{align-items:stretch;flex-direction:column}.toolbar input{max-width:none}.form-grid{grid-template-columns:1fr}.login-card{padding:25px}}

/* Dense business-operation controls */
.row-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:220px}.row-actions button,.row-actions select{font-size:12px;padding:7px 9px}.modal .panel{margin:12px 0;padding:14px;overflow:auto}.modal .panel table{min-width:640px}.modal .panel h3{margin:0 0 10px}.modal input[type=checkbox]{width:18px;height:18px}.modal .primary{margin-top:10px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-head h3{margin:0}.table-panel{overflow:auto}
