:root{font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:#182131;background:#f3f5f9;font-synthesis:none;--accent:#ef3f62;--accent-dark:#d92f52;--ink:#182131;--muted:#758096;--line:#e5e9f0;--panel:#fff;--canvas:#f3f5f9}*{box-sizing:border-box}html{background:var(--canvas)}body{margin:0;min-width:320px;background:var(--canvas)}button,input,textarea{font:inherit}.loading{padding:80px;text-align:center;color:var(--muted)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:44px;height:44px;border-radius:12px;object-fit:cover;box-shadow:0 4px 14px rgba(20,98,79,.16)}.brand span{display:grid;gap:2px}.brand b{font-size:18px}.brand small{font-size:12px;font-weight:500;color:#8a94a6}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);align-items:center;gap:72px;width:min(1120px,calc(100% - 48px));margin:auto;padding:48px}.login-copy{max-width:560px}.eyebrow{display:inline-block;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.13em}.login-copy h1{margin:16px 0 18px;font-size:48px;line-height:1.18;letter-spacing:-.035em}.login-copy p{margin:0;color:#667187;font-size:18px;line-height:1.8}.login-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.login-points span{padding:9px 13px;border:1px solid #e2e7ef;border-radius:999px;background:#fff;color:#536077;font-size:13px;font-weight:650}.login-card{width:100%;padding:34px 36px 36px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(31,45,68,.1)}.login-card h2{margin:30px 0 5px;font-size:27px}.muted{color:var(--muted)}.field{display:grid;gap:8px;margin-top:17px;color:#3f4a5d;font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid #dce2eb;border-radius:10px;background:#fff;color:var(--ink);outline:0;transition:border-color .18s,box-shadow .18s}.field input,.field select{height:45px;padding:0 13px}.field textarea{min-height:145px;padding:12px 13px;line-height:1.65;resize:vertical}.field input:focus,.field textarea:focus{border-color:#f06b85;box-shadow:0 0 0 3px rgba(239,63,98,.1)}.remember{display:flex;align-items:center;gap:8px;margin-top:16px;color:#596579;font-size:14px}.remember input{width:16px;height:16px;accent-color:var(--accent)}.btn{min-height:42px;border:0;border-radius:9px;background:var(--accent);color:#fff;padding:10px 17px;font:700 14px inherit;cursor:pointer;transition:background .18s,transform .18s}.btn:hover{background:var(--accent-dark)}.btn:active{transform:translateY(1px)}.btn.secondary{border:1px solid #dce2eb;background:#fff;color:#445167}.btn.secondary:hover{border-color:#cbd3df;background:#f8fafc}.btn.danger{border:1px solid #ffdbe3;background:#fff5f7;color:#cf3150}.btn.small{min-height:36px;padding:7px 12px}.login-card>.btn{width:100%;margin-top:22px}.message{margin:0 0 18px;padding:11px 14px;border:1px solid #cdebdc;border-radius:10px;background:#edf8f3;color:#167456}.message.error{border-color:#ffd4dc;background:#fff0f3;color:#c72e49}.layout{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:252px;padding:26px 20px 22px;border-right:1px solid var(--line);background:#fff;display:flex;flex-direction:column}.side-brand{padding:0 8px 25px;border-bottom:1px solid #edf0f4}.nav{display:grid;gap:7px;margin-top:24px}.nav button{width:100%;display:grid;gap:3px;padding:12px 14px;border:0;border-radius:11px;background:transparent;text-align:left;color:#47546a;cursor:pointer}.nav button span{font-weight:750}.nav button small{color:#929bad;font-size:11px}.nav button:hover{background:#f7f8fb}.nav button.active{background:#fff0f3;color:#d92f52;box-shadow:inset 3px 0 0 var(--accent)}.nav button.active small{color:#d96a80}.side-foot{display:flex;align-items:center;gap:10px;margin-top:auto;padding:15px 12px;border-radius:12px;background:#f6faf8;color:#364d44}.side-foot div{display:grid;gap:2px}.side-foot b{font-size:13px}.side-foot small{font-size:11px;color:#819188}.status-dot{width:9px;height:9px;border-radius:50%;background:#20b675;box-shadow:0 0 0 4px rgba(32,182,117,.12)}.workspace{min-height:100vh;margin-left:252px}.topbar{position:sticky;top:0;z-index:20;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(12px)}.page-title{display:grid;gap:2px}.page-title b{font-size:16px}.page-title span{font-size:11px;color:#9099aa}.top-actions{display:flex;align-items:center;gap:10px}.admin-chip{display:grid;place-items:center;min-width:38px;height:38px;padding:0 12px;border-radius:10px;background:#f3f5f8;color:#526078;font-size:13px;font-weight:800}.menu-button{display:none;border:1px solid #dce2eb;border-radius:8px;background:#fff;padding:8px 11px;color:#455268;font-weight:700}.container{width:min(100% - 48px,1280px);margin:30px auto 56px}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.hero h1{margin:8px 0 4px;font-size:30px;letter-spacing:-.025em}.hero p{margin:0;color:var(--muted);font-size:14px}.stats{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:15px;margin-bottom:20px}.stat,.card{border:1px solid var(--line);border-radius:15px;background:var(--panel);box-shadow:0 7px 22px rgba(35,48,68,.045)}.stat{min-height:142px;padding:21px 22px;position:relative;overflow:hidden}.stat.current:after{content:"";position:absolute;right:-35px;bottom:-54px;width:135px;height:135px;border-radius:50%;background:rgba(239,63,98,.055)}.stat>span{display:block;color:var(--muted);font-size:12px;font-weight:650}.stat strong{display:block;margin-top:10px;font-size:26px;line-height:1.25;overflow-wrap:anywhere}.stat strong em{font-size:14px;font-style:normal;color:#7d8799}.stat strong.date-value{font-size:19px;margin-top:15px}.stat small{display:block;margin-top:10px;color:#98a1b1;font-size:11px;overflow-wrap:anywhere}.content-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px}.card{padding:22px;margin-top:16px}.content-grid .card{margin-top:0}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.card h2{margin:0;font-size:18px;letter-spacing:-.01em}.card-head p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.format-tag,.count-pill{flex:none;padding:6px 9px;border-radius:999px;background:#f3f5f8;color:#667187;font-size:11px;font-weight:700}.count-pill{background:#fff0f3;color:#d23b59}.form-stack{display:grid}.form-stack .btn{margin-top:16px;justify-self:start}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1.5fr auto;gap:11px;align-items:end}.form-action{grid-column:1/-1;margin-top:5px}.top-gap{margin-top:16px}.list{display:grid;gap:9px}.list-item{display:grid;grid-template-columns:38px minmax(130px,.75fr) minmax(245px,1.5fr) auto;align-items:center;gap:13px;padding:13px 14px;border:1px solid #e8ecf2;border-radius:11px;background:#fff}.list-item:hover{border-color:#d8dee8;background:#fbfcfe}.list-item.active{border-color:#f1a5b4;background:#fff8fa}.row-index{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f3f5f8;color:#8b95a6;font-size:11px;font-weight:800}.list-item.active .row-index{background:#ffe4ea;color:#d63252}.list-main b{display:block;font-size:14px}.list-main small{color:var(--muted);font-size:11px}.address{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere;color:#455268;font-size:12px}.actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.badge{display:inline-block;margin-left:7px;padding:2px 7px;border-radius:10px;background:#eaf8f2;color:#16805d;font-size:10px}.logs{display:grid}.log{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-top:1px solid #edf0f4;font-size:13px}.log:first-child{border-top:0}.log time{flex:none;color:#8a95a7}.empty{padding:30px;text-align:center;color:#8792a4;border:1px dashed #dce2eb;border-radius:12px}.narrow-card{max-width:880px}.backdrop{display:none}
@media(max-width:1040px){.stats{grid-template-columns:1fr 1fr}.stat.current{grid-column:1/-1}.content-grid{grid-template-columns:1fr}.list-item{grid-template-columns:34px minmax(130px,.8fr) minmax(210px,1.2fr)}.list-item .actions{grid-column:2/-1;justify-content:flex-start}}
@media(max-width:760px){.sidebar{transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 45px rgba(30,42,61,.13)}.sidebar.open{transform:translateX(0)}.backdrop{position:fixed;inset:0;z-index:25;background:rgba(24,33,49,.34)}.backdrop.show{display:block}.workspace{margin-left:0}.topbar{height:64px;padding:0 15px}.menu-button{display:block}.page-title{display:none}.top-actions{gap:7px}.admin-chip{height:35px;min-width:35px}.top-actions .btn{min-height:35px;padding:7px 10px}.container{width:min(100% - 28px,1280px);margin:20px auto 42px}.hero{align-items:flex-start}.hero h1{font-size:25px}.hero p{font-size:13px}.hero .btn{min-height:39px;padding:8px 12px;font-size:12px}.stats{grid-template-columns:1fr;gap:10px}.stat.current{grid-column:auto}.stat{min-height:112px;padding:17px}.stat strong{font-size:22px}.stat strong.date-value{font-size:17px}.content-grid{gap:10px}.card{padding:17px;margin-top:10px;border-radius:13px}.card-head{display:flex;align-items:flex-start}.grid-2,.form-row{grid-template-columns:1fr}.list-item{grid-template-columns:34px minmax(0,1fr);padding:12px}.list-item .address,.list-item .actions{grid-column:2/-1}.actions{justify-content:flex-start}.log{display:block}.log time{display:block;margin-top:5px}.login{grid-template-columns:1fr;width:min(100% - 28px,440px);padding:26px 0}.login-copy{display:none}.login-card{padding:27px 23px;border-radius:18px}.login-card h2{font-size:24px}.side-brand{padding-bottom:20px}}
@media(max-width:430px){.hero{display:grid}.hero .btn{justify-self:start}.card-head{gap:10px}.format-tag{display:none}.top-actions .admin-chip{display:none}.list-card .card-head{align-items:center}}
.order-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.order-summary article{padding:18px 19px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(35,48,68,.04)}.order-summary span,.order-summary small{display:block;color:var(--muted);font-size:11px}.order-summary strong{display:block;margin:7px 0 5px;font-size:25px}.order-summary strong em{font-size:13px;font-style:normal;color:#7d8799}.order-card{padding-bottom:14px}.order-card .card-head .btn{white-space:nowrap}.order-table-head,.order-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(190px,1fr) minmax(270px,1.35fr) minmax(130px,.55fr);align-items:center;gap:18px}.order-table-head{padding:0 14px 10px;color:#929bad;font-size:11px;font-weight:750}.order-row{min-height:78px;padding:13px 14px;border-top:1px solid #edf0f4}.order-row:hover{background:#fbfcfe}.order-row b{display:block;font-size:13px}.order-row small{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.45}.order-address{font-size:11px}.order-amount{display:flex;align-items:flex-end;flex-direction:column;gap:7px}.order-amount strong{font-size:15px}.order-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:750}.order-status.paid{background:#eaf8f2;color:#16805d}.order-status.pending{background:#fff4dc;color:#a96d08}
@media(max-width:1040px){.order-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.order-table-head,.order-row{grid-template-columns:minmax(145px,.7fr) minmax(180px,.9fr) minmax(220px,1.1fr) minmax(115px,.5fr);gap:12px}}
@media(max-width:760px){.order-summary{gap:9px}.order-summary article{padding:15px}.order-summary strong{font-size:22px}.order-table-head{display:none}.order-list{display:grid;gap:10px}.order-row{display:grid;grid-template-columns:1fr auto;gap:13px 15px;min-height:0;padding:16px;border:1px solid #e8ecf2;border-radius:12px}.order-row:first-child{border-top:1px solid #e8ecf2}.order-row:hover{background:#fff}.order-row>div:before{content:attr(data-label);display:block;margin-bottom:5px;color:#929bad;font:700 10px/1.2 inherit}.order-row>div:nth-child(2){text-align:right}.order-row .order-address{grid-column:1/-1;padding-top:11px;border-top:1px solid #edf0f4}.order-row .order-amount{grid-column:1/-1;align-items:center;justify-content:space-between;flex-direction:row;padding-top:11px;border-top:1px solid #edf0f4}.order-row .order-amount:before{margin:0}.order-card{padding-bottom:17px}}
.card-head-actions{display:flex;flex:none;gap:8px}.btn:disabled{cursor:not-allowed;opacity:.45}@media(max-width:760px){.card-head-actions{gap:6px}.card-head-actions .btn{padding-inline:9px;font-size:12px}}
