:root{--color:#E67E22;--radius:8px}html,body{background-color:#F4F5F7;color:#222}body{font-family:Arial,Helvetica,sans-serif;font-size:14px;margin:0}a{color:var(--color)}h1{font-size:22px;margin:0 0 10px}h2{font-size:18px;margin:0}.hidden{display:none !important}.gray{color:#888}.red{color:#E74C3C}.green{color:#27AE60}.yellow{color:#F1C40F}.fs11{font-size:11px}.fs12{font-size:12px}.mt5{margin-top:5px}.mt10{margin-top:10px}.ml10{margin-left:10px}.mr5{margin-right:5px}.m{margin-bottom:15px}.center{text-align:center}.right{text-align:right}.nowrap{white-space:nowrap}.pointer{cursor:pointer}.link{color:var(--color);cursor:pointer}.help{font-size:12px;color:#888;margin:-8px 0 12px}.label{font-size:12px;font-weight:bold;color:#555;margin-bottom:6px}.grid-2{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}.grid-2 .m{margin-bottom:15px}hr{border:0;border-top:1px solid #E5E5E5;margin:15px 0}.button,button,.btn{border:0;border-radius:var(--radius);background-color:var(--color);color:#FFF;height:40px;padding:0 18px;font-size:14px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}.button{width:100%;margin-top:10px}.button:disabled,button:disabled{background-color:#E0E0E0;color:#999;cursor:not-allowed}button.small,.btn.small{height:32px;padding:0 12px;font-size:13px;background-color:#F0F0F0;color:#333}.btn.green{background-color:#25D366;color:#FFF}body.login{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:15px;box-sizing:border-box}.loginbox{background-color:#FFF;border-radius:12px;padding:25px;max-width:380px;width:100%;box-shadow:0 5px 25px rgba(0,0,0,0.06)}.loginbox .brand{color:var(--color);font-weight:bold;margin-bottom:15px}header.top{background-color:var(--color);color:#FFF;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;position:sticky;top:0;z-index:10}header.top .shopname{display:flex;align-items:center;gap:10px;font-weight:bold;font-size:16px}header.top .shopname img{width:34px;height:34px;border-radius:50%;object-fit:cover;background-color:#FFF}header.top .logout{background-color:transparent;font-size:18px;padding:0 8px}nav.tabs{display:flex;overflow-x:auto;background-color:#FFF;border-bottom:1px solid #E5E5E5;position:sticky;top:56px;z-index:9}nav.tabs span{padding:14px 14px;white-space:nowrap;cursor:pointer;color:#555;border-bottom:3px solid transparent}nav.tabs span i{margin-right:6px}nav.tabs span.selected{color:var(--color);border-bottom-color:var(--color);font-weight:bold}main{max-width:960px;margin:0 auto;padding:15px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.toolbar button{height:34px;background-color:#FFF;color:#333;border:1px solid #E0E0E0}.card{background-color:#FFF;border-radius:var(--radius);padding:15px;margin-bottom:15px;box-shadow:0 1px 3px rgba(0,0,0,0.04)}.card.nopadding{padding:0}.alert{background-color:#FEF5E7;color:#9A5B13;border-radius:var(--radius);padding:12px 15px;margin-bottom:15px}.alert i{margin-right:8px}.empty{text-align:center;color:#999;padding:40px 15px}.empty i{display:block;font-size:36px;margin-bottom:10px;color:#CCC}.badge{display:inline-block;font-size:11px;padding:2px 7px;border-radius:10px;background-color:#E0E0E0;color:#333;margin-right:4px}.badge-orange{background-color:#F39C12;color:#FFF}.badge-red{background-color:#E74C3C;color:#FFF}.badge-green{background-color:#27AE60;color:#FFF}.order .badge[style]{color:#FFF}.shoplink{word-break:break-all;font-weight:bold;font-size:15px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px}.stat{background-color:#FFF;border-radius:var(--radius);padding:15px;text-align:center;cursor:pointer}.stat b{display:block;font-size:26px;color:var(--color)}.stat span{font-size:12px;color:#777}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.product{display:flex;gap:12px;background-color:#FFF;border-radius:var(--radius);padding:10px;cursor:pointer}.product:hover{box-shadow:0 2px 8px rgba(0,0,0,0.08)}.product .picture{width:80px;height:80px;flex-shrink:0;border-radius:6px;background-color:#F0F0F0;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#BBB;font-size:24px}.product .picture img{width:100%;height:100%;object-fit:cover}.product .info{min-width:0}.product .name{font-weight:bold;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.product .price{color:var(--color);font-weight:bold}.product .price s{color:#999;font-weight:normal;font-size:12px}.product .meta{font-size:12px;color:#888;margin:3px 0}.orderhead{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px}.orderhead .date{margin-left:auto;font-size:12px;color:#888}.lines{width:100%;border-collapse:collapse;margin-bottom:10px}.lines td{padding:6px 4px;border-bottom:1px solid #F0F0F0;vertical-align:middle}.lines .pic{width:40px}.lines .pic img{width:36px;height:36px;object-fit:cover;border-radius:4px}.lines .total td{font-weight:bold;border-bottom:0}.customer{font-size:13px;color:#555;line-height:1.8}.customer i{width:20px;color:#999}.category{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid #F0F0F0}.category i{margin-right:8px;color:#999}.category.sub{font-size:13px;color:#555}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.gallery.small{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.gallery figure{margin:0;background-color:#FFF;border-radius:var(--radius);overflow:hidden;border:1px solid #EEE}.gallery img{width:100%;aspect-ratio:1;object-fit:cover;display:block;cursor:pointer;background-color:#F0F0F0}.gallery figcaption{padding:6px 8px;display:flex;flex-direction:column;gap:2px}.gallery figcaption.actions,.gallery .actions{flex-direction:row;justify-content:space-between;display:flex}.gallery .actions i{cursor:pointer;font-size:15px;padding:2px}.gallery .filename{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo{width:110px;height:110px;margin:0 auto;border-radius:50%;background-color:#F0F0F0;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:40px;color:#BBB}.logo img{width:100%;height:100%;object-fit:cover}@media (max-width:640px){.stats{grid-template-columns:1fr 1fr}main{padding:10px}}