.settings-grid{margin-top:18px}.settings-grid label{position:relative}.configured{color:var(--green);font-weight:400;margin-left:7px}.setting-help{color:var(--muted);font-size:12px;font-weight:400;line-height:1.55}
.account-actions{display:flex;gap:8px;margin-top:14px}
:root{--ink:#17211b;--muted:#6d776f;--line:#dce2dc;--paper:#f4f6f2;--white:#fff;--green:#176b4d;--green-soft:#dcece4;--red:#b34539;--amber:#d99b2b;--sidebar:#18251f;--shadow:0 18px 55px rgba(31,48,39,.15)}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:"HarmonyOS Sans SC","Microsoft YaHei",sans-serif;font-size:14px;letter-spacing:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:228px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:228px;background:var(--sidebar);color:#e9f0eb;padding:22px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 24px}.brand strong{font-size:15px}.brand-mark{display:grid;place-items:center;width:58px;height:58px;background:var(--green);color:#fff;font-family:Georgia,serif;font-weight:700;border-radius:4px}.brand-mark.small{width:35px;height:35px;font-size:11px}.sidebar nav{display:grid;gap:4px}.nav-item{border:0;background:transparent;color:#aebbb3;text-align:left;padding:11px 12px;border-radius:5px}.nav-item span{display:inline-block;width:25px;color:#d2dbd5}.nav-item:hover,.nav-item.active{background:#2b3d34;color:#fff}.nav-label{margin:22px 12px 7px;color:#718177;font-size:11px;text-transform:uppercase}.sidebar-foot{margin-top:auto;color:#91a198;font-size:11px;padding:10px}.status-dot{display:inline-block;width:7px;height:7px;background:#69c990;border-radius:50%;margin-right:7px}.workspace{grid-column:2;min-width:0}.topbar{height:92px;padding:21px 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(255,255,255,.72)}.topbar h1{font-family:Georgia,"Noto Serif SC",serif;margin:4px 0;font-size:25px}.breadcrumb,.eyebrow{margin:0;color:var(--green);font-size:10px;font-weight:700;letter-spacing:1.4px}.user-menu{display:grid;grid-template-columns:auto 34px;column-gap:12px;text-align:right;align-items:center}.user-menu span{font-weight:700}.user-menu small{color:var(--muted);grid-column:1}.user-menu button{grid-column:2;grid-row:1/3;border:1px solid var(--line);background:#fff;width:34px;height:34px;border-radius:4px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:var(--white)}.metrics button{position:relative;border:0;border-right:1px solid var(--line);background:#fff;text-align:left;padding:22px 28px;display:grid;grid-template-columns:auto 1fr;gap:2px 13px}.metrics button:hover{background:#f8faf7}.metrics strong{font:700 30px Georgia,serif}.metrics small{font-weight:700;align-self:end}.metrics em{grid-column:2;color:var(--muted);font-style:normal;font-size:11px}.metric-index{color:#9ba69e;font:12px Georgia,serif;margin-top:5px}.content-band{margin:24px 28px 40px;background:var(--white);border:1px solid var(--line);box-shadow:0 7px 28px rgba(34,49,40,.05)}.list-head,.filters,.batch-bar{display:flex;align-items:center;padding:15px 18px;border-bottom:1px solid var(--line)}.list-head{justify-content:space-between}.segmented{display:flex;gap:2px;background:#edf1ed;padding:3px;border-radius:5px}.segmented button{border:0;background:transparent;padding:8px 14px;border-radius:3px;color:var(--muted)}.segmented button.active{background:#fff;color:var(--ink);box-shadow:0 1px 4px #ccd4ce}.button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:4px;padding:9px 14px}.button.primary{background:var(--green);color:#fff;border-color:var(--green)}.button.wide{width:100%;padding:12px}.filters{gap:10px;background:#fafbf9}.filters select,.search{border:1px solid var(--line);background:#fff;border-radius:4px;height:36px}.filters select{padding:0 30px 0 10px}.search{display:flex;align-items:center;width:min(330px,38vw);padding:0 10px}.search input{width:100%;border:0;outline:0;padding:8px}.selection-count{margin-left:auto;color:var(--muted)}.selection-count b{color:var(--green)}.batch-bar{gap:7px;padding-top:10px;padding-bottom:10px}.batch-bar button{border:0;background:transparent;color:#4e5b53;padding:7px 9px}.batch-bar button:hover{background:var(--green-soft);color:var(--green)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:930px}th,td{padding:13px 12px;border-bottom:1px solid #edf0ed;text-align:left;vertical-align:middle}th{background:#fafbf9;color:#69746d;font-size:11px;font-weight:600}td{font-size:12px}.product-cell{display:flex;gap:11px;align-items:center}.product-image{width:48px;height:48px;object-fit:cover;background:#e8ece8;border-radius:3px}.image-placeholder{display:grid;place-items:center;color:#869188}.product-title{max-width:280px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.draft-tag{display:inline-block;margin-top:5px;padding:2px 5px;background:#fff1cf;color:#885d0e;border-radius:2px;font-size:10px}.source-link{color:var(--green);text-decoration:none}.row-actions{display:flex;gap:5px}.row-actions button{border:0;background:transparent;color:var(--green);padding:4px}.empty-state{min-height:290px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted)}.empty-state strong{color:var(--ink);font:20px Georgia,"Noto Serif SC",serif}.empty-state .button{margin-top:10px}.login-page{min-height:100vh;background:linear-gradient(120deg,#14251d 0 53%,#edf1eb 53%)}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;align-items:center}.login-brand{color:#eaf1ec;padding:9vw}.login-brand h1{font:700 clamp(38px,5vw,66px) Georgia,"Noto Serif SC",serif;max-width:600px;margin:14px 0}.login-brand>p:not(.eyebrow){color:#aebeb4;max-width:510px;line-height:1.8}.flow-line{display:flex;align-items:center;gap:12px;margin-top:55px;font-size:11px}.flow-line i{width:48px;height:1px;background:#5e7468}.login-panel{width:min(430px,80%);justify-self:center;background:#fff;padding:46px;box-shadow:var(--shadow)}.login-panel h2{font:28px Georgia,"Noto Serif SC",serif;margin:8px 0}.muted{color:var(--muted)}.form-stack{display:grid;gap:18px;margin-top:36px}.form-stack label,.field-grid label{display:grid;gap:7px;font-size:12px;font-weight:650}.form-stack input,.field-grid input,.field-grid select,.field-grid textarea{width:100%;border:1px solid var(--line);border-radius:4px;padding:11px;outline:0}.form-stack input:focus,.field-grid input:focus,.field-grid textarea:focus{border-color:var(--green)}.form-error{color:var(--red);margin:0}.dialog-shell{width:min(650px,90vw);padding:0;border:0}.dialog-shell header{display:flex;justify-content:space-between;align-items:start;padding:22px 24px;border-bottom:1px solid var(--line)}.dialog-shell h2{font:24px Georgia,"Noto Serif SC",serif;margin:3px 0}.dialog-shell header small{color:var(--green);font-weight:700}.icon-button{border:0;background:transparent;font-size:24px}.dialog-content{padding:22px 24px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field-grid .full{grid-column:1/-1}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid var(--line);background:#fafbf9}dialog{border:0;padding:0;box-shadow:var(--shadow)}dialog::backdrop{background:rgba(18,31,24,.55)}.toast{position:fixed;right:24px;bottom:24px;background:#1e3027;color:#fff;padding:13px 18px;border-radius:4px;box-shadow:var(--shadow);z-index:20}.toast.error{background:var(--red)}
@media(max-width:900px){.app-shell{grid-template-columns:70px 1fr}.sidebar{width:70px;padding:18px 8px}.brand strong,.nav-item:not(.active){font-size:0}.brand{padding:0 8px 20px}.brand-mark.small{width:38px}.nav-item{padding:11px}.nav-item span{font-size:17px;width:auto}.nav-label,.sidebar-foot{display:none}.metrics{grid-template-columns:1fr 1fr}.workspace{grid-column:2}.topbar{padding:18px}.content-band{margin:16px}.metrics button{padding:16px}.field-grid{grid-template-columns:1fr}}
@media(max-width:600px){.app-shell{display:block}.sidebar{position:fixed;z-index:10;top:auto;right:0;width:auto;height:58px;flex-direction:row}.sidebar .brand,.sidebar .nav-label,.sidebar-foot{display:none}.sidebar nav{width:100%;display:flex;justify-content:space-around}.nav-item{font-size:0}.workspace{padding-bottom:58px}.topbar{height:76px}.topbar h1{font-size:20px}.metrics button{padding:13px}.metrics em,.metric-index{display:none}.metrics strong{font-size:23px}.content-band{margin:10px 0}.list-head{align-items:flex-start;gap:10px}.segmented{overflow:auto}.segmented button{white-space:nowrap;padding:7px 9px}.filters{flex-wrap:wrap}.search{width:100%}.selection-count{margin-left:0}.login-page{background:#18251f}.login-shell{display:block;padding:24px}.login-brand{padding:35px 5px}.login-brand h1{font-size:38px}.flow-line{margin-top:25px}.login-panel{width:100%;padding:30px}.user-menu span,.user-menu small{display:none}}
.top-actions{display:flex;align-items:center;gap:16px}.wallet-chip{border:1px solid #b9d1c3;background:var(--green-soft);color:var(--green);border-radius:4px;padding:8px 11px;font-size:11px}.wallet-chip strong{margin-left:4px;font-size:14px}.wallet-summary{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:20px;padding:18px;background:var(--green-soft);border-left:3px solid var(--green)}.wallet-summary small{grid-column:1/-1;color:var(--green)}.wallet-summary strong{font:30px Georgia,serif}.wallet-summary span{color:var(--muted);font-size:11px}.settings-grid{margin-top:18px}.settings-grid label{position:relative}.configured{color:var(--green);font-weight:400;margin-left:7px}.price-input{width:90px;border:1px solid var(--line);padding:7px;border-radius:3px}.section-title{margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}
.recharge-panel{margin:22px 0}.recharge-panel h3{margin-bottom:4px}.package-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.recharge-package{display:grid;gap:3px;border:1px solid var(--line);background:#fff;padding:12px 8px;border-radius:4px;color:var(--ink)}.recharge-package:hover{border-color:var(--green);background:var(--green-soft)}.recharge-package span{color:var(--muted);font-size:10px}.custom-recharge{display:flex;gap:8px}.custom-recharge input{flex:1;border:1px solid var(--line);border-radius:4px;padding:9px}.payment-state{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.payment-mark{display:grid;place-items:center;width:72px;height:72px;border-radius:8px;background:#1677ff;color:#fff;font-size:36px;font-weight:700}.payment-state>strong{font:26px Georgia,serif}.payment-state p{margin:0;color:var(--green)}.payment-link{margin:8px 0;text-decoration:none}.payment-state code{color:var(--muted);font-size:11px}.payment-state small{color:var(--amber)}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin:-18px -18px 30px;border-bottom:1px solid var(--line)}.auth-tabs button{border:0;background:transparent;padding:13px;color:var(--muted);border-bottom:2px solid transparent}.auth-tabs button.active{color:var(--green);border-bottom-color:var(--green);font-weight:700}.auth-foot{text-align:center;color:var(--muted);font-size:12px;margin:20px 0 0}.auth-foot button{border:0;background:transparent;color:var(--green);font-weight:700;padding:3px}.register-only[hidden]{display:none}

/* Authentication experience */
.login-brand > * { animation: auth-reveal .65s both; }
.login-brand > :nth-child(2) { animation-delay: .08s; }
.login-brand > :nth-child(3) { animation-delay: .16s; }
.login-brand > :nth-child(4) { animation-delay: .24s; }
.login-brand > :nth-child(5) { animation-delay: .32s; }
.login-brand > :nth-child(6) { animation-delay: .4s; }
.brand-intro { max-width: 610px; line-height: 1.85; }
.project-capabilities { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; max-width: 700px; margin-top: 34px; background: rgba(255,255,255,.14); }
.project-capabilities div { display: grid; gap: 7px; min-height: 132px; padding: 18px; background: #14251d; border-top: 2px solid rgba(105,201,144,.35); }
.project-capabilities strong { color: #69c990; font: 18px Georgia, serif; }
.project-capabilities span { color: #fff; font-weight: 700; }
.project-capabilities small { color: #aebbb3; line-height: 1.6; }
.flow-line i { position: relative; overflow: hidden; }
.flow-line i::after { content: ""; position: absolute; inset: 0; background: #69c990; transform: translateX(-100%); animation: flow-progress 2.8s ease-in-out infinite; }
.login-panel { animation: panel-enter .7s .15s both; }
.verification-control { display: grid; grid-template-columns: minmax(0, 1fr) 112px; gap: 8px; margin-top: 7px; }
.verification-control .button { min-height: 42px; padding: 0 10px; font-size: 12px; }
.form-error.success { color: var(--green); }
@keyframes auth-reveal { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes panel-enter { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes flow-progress { 0% { transform: translateX(-100%); } 45%, 100% { transform: translateX(100%); } }
@media (prefers-reduced-motion: reduce) { .login-brand > *, .login-panel, .flow-line i::after { animation: none; } }
@media (max-width: 900px) { .project-capabilities { grid-template-columns: 1fr; } .project-capabilities div { min-height: auto; } }
@media (max-width: 600px) { .project-capabilities { margin-top: 24px; } .login-brand { padding-bottom: 20px; } .verification-control { grid-template-columns: 1fr; } }
.account-mode-tabs{display:flex;gap:4px;margin:22px 0 18px;border-bottom:1px solid var(--line)}.account-mode-tabs button{border:0;background:transparent;padding:10px 14px;color:var(--muted);border-bottom:2px solid transparent}.account-mode-tabs button.active{color:var(--green);border-bottom-color:var(--green);font-weight:700}.shop-list{display:grid;gap:8px;margin-top:14px}.shop-option{display:flex;align-items:center;justify-content:space-between;text-align:left;border:1px solid var(--line);background:#fff;padding:12px;border-radius:4px}.shop-option:hover{border-color:var(--green);background:var(--green-soft)}.shop-option span{color:var(--muted);font-size:11px}.account-submit{margin-top:16px}

/* Unified button system */
:root {
	--button-primary: #176b4d;
	--button-primary-hover: #10583e;
	--button-primary-active: #0c4934;
	--button-border: #cfd8d2;
	--button-surface: #ffffff;
	--button-surface-hover: #f3f7f4;
	--button-danger: #bd4338;
	--button-danger-hover: #a8362d;
	--button-focus: rgba(23, 107, 77, .2);
}

.button,
.batch-bar button,
.row-actions button,
.wallet-chip,
.account-brand-editor button {
	min-height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 0 16px;
	border: 1px solid var(--button-border);
	border-radius: 6px;
	background: var(--button-surface);
	color: #324139;
	box-shadow: 0 1px 2px rgba(24, 45, 35, .06);
	font-weight: 650;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .12s ease;
}

.button:hover:not(:disabled),
.batch-bar button:hover:not(:disabled),
.row-actions button:hover:not(:disabled),
.wallet-chip:hover:not(:disabled),
.account-brand-editor button:hover:not(:disabled) {
	border-color: #9eb6a8;
	background: var(--button-surface-hover);
	color: var(--green);
	box-shadow: 0 4px 12px rgba(24, 45, 35, .1);
	transform: translateY(-1px);
}

.button:active:not(:disabled),
.batch-bar button:active:not(:disabled),
.row-actions button:active:not(:disabled),
.wallet-chip:active:not(:disabled),
.account-brand-editor button:active:not(:disabled) {
	box-shadow: 0 1px 3px rgba(24, 45, 35, .1);
	transform: translateY(0);
}

.button.primary {
	border-color: var(--button-primary);
	background: var(--button-primary);
	color: #fff;
	box-shadow: 0 5px 14px rgba(23, 107, 77, .2);
}

.button.primary:hover:not(:disabled) {
	border-color: var(--button-primary-hover);
	background: var(--button-primary-hover);
	color: #fff;
	box-shadow: 0 7px 18px rgba(23, 107, 77, .26);
}

.button.primary:active:not(:disabled) {
	border-color: var(--button-primary-active);
	background: var(--button-primary-active);
}

.button.danger,
.batch-delete-products,
.row-actions .delete-product {
	border-color: #e7b7b2;
	background: #fff8f7;
	color: var(--button-danger);
}

.button.danger:hover:not(:disabled),
.batch-delete-products:hover:not(:disabled),
.row-actions .delete-product:hover:not(:disabled) {
	border-color: var(--button-danger);
	background: var(--button-danger);
	color: #fff;
	box-shadow: 0 5px 14px rgba(189, 67, 56, .2);
}

.button:focus-visible,
.batch-bar button:focus-visible,
.row-actions button:focus-visible,
.wallet-chip:focus-visible,
.user-menu button:focus-visible,
.icon-button:focus-visible,
.segmented button:focus-visible,
.recharge-package:focus-visible,
.shop-option:focus-visible {
	outline: 3px solid var(--button-focus);
	outline-offset: 2px;
}

.button:disabled,
.batch-bar button:disabled,
.row-actions button:disabled,
.wallet-chip:disabled,
.account-brand-editor button:disabled {
	cursor: not-allowed;
	opacity: .5;
	box-shadow: none;
	transform: none;
}

.button.wide {
	min-height: 44px;
	padding: 0 20px;
}

.batch-bar {
	gap: 8px;
	background: #fbfcfb;
}

.batch-bar button {
	min-height: 34px;
	padding: 0 12px;
	background: #fff;
	color: #4b5a51;
	font-size: 12px;
}

.row-actions {
	gap: 7px;
}

.row-actions button,
.row-actions .source-link {
	min-height: 32px;
	padding: 0 10px;
	border: 1px solid #d8e0db;
	border-radius: 5px;
	background: #fff;
	font-size: 12px;
	font-weight: 650;
	line-height: 30px;
	text-decoration: none;
}

.segmented {
	gap: 3px;
	padding: 4px;
	border: 1px solid #dde4df;
	border-radius: 7px;
	background: #edf2ef;
}

.segmented button {
	min-height: 34px;
	padding: 0 15px;
	border: 1px solid transparent;
	border-radius: 5px;
	font-weight: 650;
	transition: background-color .16s ease, color .16s ease, box-shadow .16s ease;
}

.segmented button:hover:not(.active) {
	color: var(--green);
	background: rgba(255, 255, 255, .62);
}

.segmented button.active {
	border-color: #d8e1db;
	background: #fff;
	color: var(--green);
	box-shadow: 0 2px 7px rgba(24, 45, 35, .1);
}

.wallet-chip {
	min-height: 38px;
	border-color: #b8d4c5;
	background: #e9f4ee;
	color: var(--green);
}

.user-menu button,
.icon-button {
	display: inline-grid;
	place-items: center;
	border: 1px solid var(--button-border);
	border-radius: 6px;
	background: #fff;
	color: #59675f;
	transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease;
}

.user-menu button:hover,
.icon-button:hover {
	border-color: #9eb6a8;
	background: #f3f7f4;
	color: var(--green);
	box-shadow: 0 4px 12px rgba(24, 45, 35, .1);
}

.icon-button {
	width: 36px;
	height: 36px;
	padding: 0;
	font-size: 22px;
}

.metrics button {
	transition: background-color .18s ease, box-shadow .18s ease;
}

.metrics button:hover {
	z-index: 1;
	background: #f8fbf9;
	box-shadow: inset 0 -3px 0 var(--green), 0 6px 18px rgba(24, 45, 35, .08);
}

.recharge-package,
.shop-option {
	border-radius: 6px;
	transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .12s ease;
}

.recharge-package:hover,
.shop-option:hover {
	box-shadow: 0 6px 16px rgba(24, 45, 35, .1);
	transform: translateY(-1px);
}

.site-logo {
	display: block;
	width: 54px;
	height: 54px;
	object-fit: contain;
	flex: none;
}

.brand .site-logo.small {
	width: 38px;
	height: 38px;
}