.seal[data-v-be5eddea]{width:38px;height:38px;border:2px solid #a7652d;color:#a7652d;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;padding:3px;border-radius:4px;box-shadow:inset 0 0 0 1px #a7652d40}i[data-v-be5eddea]{font:700 13px/1 Songti SC,serif;font-style:normal;text-align:center}i[data-v-be5eddea]:last-child{grid-column:1/3;letter-spacing:.45em;padding-left:.45em}.trend-chart[data-v-2d747272]{height:230px;width:100%}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;color:#332d27;background:#f5f4f1}button{font:inherit}.required-mark{margin-left:3px;color:#d03050;font-style:normal;font-weight:600}.admin-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:220px;background:#fffdf9;border-right:1px solid #ece7df;padding:0 16px;display:flex;flex-direction:column;z-index:10}.brand{height:76px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #eee9e1}.brand>div{display:grid;gap:3px}.brand b{font:600 19px Songti SC,serif;letter-spacing:.12em}.brand span{color:#998d81;font-size:10px}.sidebar nav{display:grid;gap:5px;padding-top:18px}.sidebar nav button{height:45px;padding:0 13px;border:0;border-radius:8px;background:transparent;color:#6f675f;display:flex;align-items:center;gap:12px;cursor:pointer;text-align:left}.sidebar nav button svg{width:18px}.sidebar nav button:hover{background:#f8f4ed}.sidebar nav button.active{background:#f0e6d6;color:#9d682d;font-weight:600}.sidebar-foot{margin-top:auto;padding:18px 8px;display:flex;align-items:center;gap:10px;border-top:1px solid #eee9e1}.sidebar-foot>div:last-child{display:grid;gap:3px;font-size:12px}.sidebar-foot span{font-size:9px;color:#9b9188}.admin-avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#8f673d,#46372a);font-size:11px}.admin-main{padding-left:220px}.topbar{height:64px;background:#fffffff0;border-bottom:1px solid #ebe7e0;padding:0 28px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar>div{display:flex;align-items:center;gap:9px;font-size:12px}.topbar span{color:#9a9188}.topbar i{font-style:normal;color:#ccc}.topbar button{width:34px;height:34px;display:grid;place-items:center;border:0;background:transparent}.topbar button svg{width:18px}.topbar .divider{width:1px;height:20px;background:#e7e1d9}.workspace{padding:27px 30px 45px;max-width:1520px;margin:auto}.welcome,.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.welcome>div:first-child>span,.page-head>div:first-child>span,.panel-head>div:first-child>span{font-size:11px;color:#9e7549;letter-spacing:.08em}.welcome h1,.page-head h1{margin:5px 0 4px;font:600 26px Songti SC,serif;letter-spacing:.05em}.welcome p{margin:0;color:#8e857c;font-size:13px}.date-chip{padding:9px 13px;border:1px solid #e7ddd1;border-radius:8px;background:#fffdf9;color:#8f7558;font-size:11px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}.stats-grid article,.panel{background:#fff;border:1px solid #ebe7df;border-radius:10px;box-shadow:0 3px 12px #42352809}.stats-grid article{padding:18px 19px;position:relative;overflow:hidden}.stats-grid article:after{content:"";position:absolute;right:-22px;top:-22px;width:72px;height:72px;border-radius:50%;background:#f4eadb}.stats-grid span{color:#857c73;font-size:12px}.stats-grid strong{display:block;margin:13px 0 7px;font:600 27px Georgia,serif}.stats-grid small{color:#89a18b;font-size:10px}.stats-grid article:last-child small{color:#b87856}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-bottom:14px}.panel{padding:19px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.panel-head h2{margin:4px 0 0;font:600 16px Songti SC,serif}.level-panel{display:grid;grid-template-columns:1fr 110px;align-items:center}.level-panel .panel-head{grid-column:1/-1}.donut{width:150px;height:150px;border-radius:50%;background:conic-gradient(#91bcc5 0,#91bcc5 32%,#9abc98 32%,#9abc98 60%,#e6b867 60%,#e6b867 80%,#86a3cf 80%,#86a3cf 95%,#957553 95%);display:grid;place-items:center;margin:auto}.donut:before{content:"";width:98px;height:98px;border-radius:50%;background:#fff}.donut div{position:absolute;display:grid;text-align:center}.donut strong{font:600 18px Georgia}.donut span{font-size:9px;color:#958b81;margin-top:4px}.level-panel ul{margin:0;padding:0;list-style:none;display:grid;gap:9px}.level-panel li{display:flex;justify-content:space-between;font-size:11px}.level-panel li span{display:flex;align-items:center;gap:6px}.level-panel li i{width:7px;height:7px;border-radius:2px;background:#91bcc5}.level-panel li .lv2{background:#9abc98}.level-panel li .lv3{background:#e6b867}.level-panel li .lv4{background:#86a3cf}.level-panel li .lv5{background:#957553}.filter-bar{display:flex;gap:10px;align-items:center;background:#fff;padding:15px;border:1px solid #ebe7df;border-radius:10px;margin-bottom:14px}.table-panel{padding:0;overflow:hidden}.data-table{width:100%;border-collapse:collapse}.data-table th{height:45px;padding:0 14px;background:#faf9f7;color:#777068;text-align:left;font-size:11px;font-weight:500;border-bottom:1px solid #eee9e3}.data-table td{height:58px;padding:8px 14px;border-bottom:1px solid #f0ece6;color:#59534d;font-size:12px}.data-table tbody tr:hover{background:#fcfaf6}.points{color:#bd6f29!important;font-weight:600}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.user-cell,.goods-cell{display:flex;align-items:center;gap:9px}.user-cell>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e2ebe6;color:#65776c}.goods-cell img{width:42px;height:38px;object-fit:cover;border-radius:6px}.goods-cell b{max-width:220px}.table-footer{height:58px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;color:#91877d;font-size:11px}.V1{background:#eff0ef!important}.V2{background:#f4e1bd!important;color:#9b682d!important}.V3{background:#dce9dd!important;color:#5f7c66!important}.V4{background:#dfe8f2!important;color:#55749b!important}.V5{background:#d5c5b2!important;color:#73583c!important}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid.one{grid-template-columns:1fr}.form-grid label{display:grid;gap:7px;font-size:12px;color:#665d54}.form-grid .full{grid-column:1/-1}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;background:#fff}.login-visual{min-height:100vh;display:grid;place-items:center;background:linear-gradient(90deg,#f6efe3e0,#f6efe359),url(/assets/tea-hero.jpg) center/cover}.login-visual section{text-align:center}.login-visual .seal{margin:auto;width:64px;height:64px}.login-visual h1{font:600 40px Songti SC,serif;letter-spacing:.25em;margin:20px 0 14px}.login-visual p{font:16px/2 Songti SC,serif;color:#756451;letter-spacing:.15em}.login-card{width:360px;margin:auto;display:grid;gap:10px}.login-card>span{color:#ae7b40;font-size:10px;letter-spacing:.2em}.login-card h2{margin:6px 0 0;font:600 28px Songti SC,serif}.login-card>p{margin:0 0 18px;color:#91877e;font-size:12px}.login-card label{margin-top:5px;font-size:12px}.login-card small{text-align:center;color:#a29a92;font-size:10px}.login-error{color:#a86a52!important;margin:0!important;font-size:10px!important}@media(max-width:960px){.sidebar{width:180px}.admin-main{padding-left:180px}.stats-grid{grid-template-columns:1fr 1fr}.dashboard-grid,.login-page{grid-template-columns:1fr}.login-visual{display:none}}@media(max-width:680px){.sidebar{width:64px;padding:0 8px}.brand>div,.sidebar nav span,.sidebar-foot>div:last-child{display:none}.brand{justify-content:center}.sidebar nav button{justify-content:center;padding:0}.admin-main{padding-left:64px}.workspace{padding:18px 12px}.stats-grid{grid-template-columns:1fr}.filter-bar{flex-wrap:wrap}.data-table{min-width:800px}.table-panel{overflow:auto}.page-head{align-items:center}.topbar{padding:0 14px}}.request-error{margin:0 0 16px;padding:12px 16px;background:#fff0ed;border:1px solid #f0c7bf;border-radius:8px;color:#a94735;font-size:13px}.level-config-tip{margin-bottom:14px;padding:13px 16px;border:1px solid #eadcc7;border-radius:10px;background:#fbf7ef;color:#806c55;font-size:12px;line-height:1.7}.level-code{display:inline-flex;min-width:42px;justify-content:center;padding:5px 10px;border:1px solid #dcc49f;border-radius:6px;background:#f8f0e2;color:#9a682f;font:600 12px Georgia,serif}.level-benefits{max-width:300px;white-space:normal;line-height:1.6}.level-form-note{margin:0;padding:10px 12px;border-radius:7px;background:#f7f3ec;color:#8a7967;font-size:11px;line-height:1.6}.brand-admin-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:16px}.brand-form>label{display:grid;gap:7px;margin-bottom:15px;font-size:12px;color:#665d54}.banner-list{display:grid;gap:10px}.banner-list>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px;border:1px solid #eee8df;border-radius:8px}.banner-list>div>div{display:grid;gap:5px}.banner-list span{font-size:10px;color:#978c81}@media(max-width:960px){.brand-admin-grid{grid-template-columns:1fr}}.image-form-field{display:grid;gap:7px;margin-bottom:15px;font-size:12px;color:#665d54}.oss-image-upload{padding:10px;border:1px solid #e8e1d8;border-radius:8px;background:#fbfaf7}.oss-image-control{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.oss-image-control small{grid-column:1/-1;color:#9c9185}.oss-image-button{height:34px;padding:0 15px;border-radius:7px;background:#b07c3e;color:#fff;display:flex;align-items:center;cursor:pointer;font-weight:600}.oss-image-button:hover{background:#c29257}.oss-image-button.disabled{opacity:.6;cursor:wait}.oss-image-button input{display:none}@media(max-width:640px){.oss-image-control{grid-template-columns:1fr}.oss-image-button{justify-content:center}.oss-image-control small{grid-column:1}}.oss-image-preview{display:block;width:100%;height:190px;margin-bottom:10px;border-radius:8px;object-fit:cover;background:#f1ede7}.oss-image-placeholder{height:86px;margin-bottom:10px;border:1px dashed #ddd2c4;border-radius:8px;display:grid;place-items:center;color:#aaa097;background:#fff}.image-empty{width:42px;height:38px;border-radius:6px;display:grid;place-items:center;background:#f0ede8;color:#aaa;font-size:9px;flex:none}.banner-list>div{grid-template-columns:58px 1fr auto auto}.banner-list>div>img{width:58px;height:44px;border-radius:6px;object-fit:cover;background:#f1ede7}
