:root{--forest:#14624b;--forest-deep:#104b3b;--ink:#203538;--muted:#566a6d;--paper:#f2f6f5;--white:#fff;--mint:#e9f3ed;--line:#dce6e2;--lime:#d8ed9c;--gold:#9e701a;--alert:#ac483b;--warning-bg:#fff4dc;--danger-bg:#fcece7;--blue:#397b96;--surface-subtle:#f7faf8;--shadow:0 5px 20px #20353806;--font:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;--display:"PingFang SC","Microsoft YaHei",sans-serif;--data:"Bahnschrift","SFMono-Regular",Consolas,var(--font)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 var(--font)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}[hidden]{display:none!important}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:20px;height:20px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--forest);color:var(--white);font-size:27px;font-weight:800}.brand-mark.small{width:38px;height:38px;font-size:22px;border-radius:12px}
.button{min-height:44px;border:1px solid transparent;padding:10px 18px;border-radius:10px;font-size:13px;font-weight:700}.button-primary{background:var(--forest);color:var(--white)}.button-primary:hover{background:var(--forest-deep)}.button-light{background:var(--mint);color:var(--forest-deep)}.button-light:hover{border-color:var(--forest)}.button-danger{background:var(--danger-bg);color:var(--alert)}.button-danger:hover{border-color:var(--alert)}.link-button{border:0;background:none;padding:4px 0;color:var(--forest);font-weight:700;text-align:left;text-decoration:underline;text-underline-offset:4px}
.eyebrow{margin:26px 0 12px;color:var(--forest);font-size:12px;font-weight:700;letter-spacing:.1em}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(440px,48%) 1fr;background:var(--white)}.login-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:44px clamp(40px,6vw,90px)}.login-card h1{font-family:var(--display);font-size:clamp(36px,3.4vw,52px);line-height:1.28;letter-spacing:-.04em;margin:0}.intro{color:var(--muted);max-width:350px;margin:20px 0 30px;font-size:14px}.login-card label{font-size:12px;font-weight:700;margin:4px 0 8px}.login-input,.login-card select{width:min(380px,100%);min-height:48px;background:var(--surface-subtle);border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-bottom:16px}.login-card .button,.login-card #demo-login{width:min(380px,100%)}.login-note{font-size:12px;color:var(--muted);margin-top:20px}.demo-divider{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:24px}
.login-art{position:relative;overflow:hidden;background:var(--forest-deep);color:var(--white);display:flex;flex-direction:column;justify-content:space-between;padding:44px}.login-art:before{content:"舒";position:absolute;right:-32px;bottom:40px;font-size:350px;font-weight:900;color:#ffffff07;line-height:1}.art-brand{font-size:23px;letter-spacing:.12em;font-weight:800}.art-brand span{display:block;font-size:12px;letter-spacing:.05em;margin-top:5px;color:var(--lime)}.art-center{position:relative;padding:50px 0}.art-caption{color:var(--lime);font-size:14px}.art-center strong{display:block;font-size:clamp(36px,4vw,56px);line-height:1.35;margin:20px 0 32px;letter-spacing:-.03em}.art-flow{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px}.art-flow span{border:1px solid #ffffff40;padding:8px 12px;border-radius:7px}.art-flow i{font-style:normal;color:var(--lime)}.art-copy{position:relative;border-top:1px solid #ffffff30;padding-top:22px;font-size:15px;font-weight:700}.art-copy span{display:block;color:#c0d8cc;font-size:12px;font-weight:400;margin-top:8px}
.workspace{min-height:100vh;display:grid;grid-template-columns:222px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:var(--white);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:28px 14px 20px}.side-brand{display:flex;gap:10px;align-items:center;padding:0 8px 38px}.side-brand strong,.side-brand small,.side-bottom strong,.side-bottom small{display:block}.side-brand strong{font-size:14px}.side-brand small,.side-bottom small{font-size:11px;color:var(--muted)}.nav-list{display:grid;gap:8px}.nav-item{position:relative;border:0;background:none;color:var(--muted);text-align:left;border-radius:10px;min-height:48px;padding:12px 14px;font-size:13px;display:flex;align-items:center;gap:12px}.nav-item:hover{background:var(--surface-subtle);color:var(--forest)}.nav-item.active{background:var(--mint);color:var(--forest-deep);font-weight:700}.nav-item.active:before{content:"";height:18px;width:3px;background:var(--forest);border-radius:4px;position:absolute;left:0}.nav-item em{font-style:normal;font-size:11px;background:var(--forest);color:var(--white);border-radius:20px;padding:1px 7px;margin-left:auto}
.side-bottom{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;margin-top:auto;padding:18px 8px 0;border-top:1px solid var(--line)}.account-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--forest);font-size:12px}.side-bottom strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-bottom button{border:1px solid var(--line);border-radius:7px;background:var(--white);color:var(--muted);font-size:12px;padding:5px 8px;margin-top:8px}.side-bottom button:hover{color:var(--forest);border-color:var(--forest)}.main-area{min-width:0}
.topbar{height:80px;background:var(--white);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 clamp(20px,3.3vw,48px);gap:16px}.topbar-title{flex:0 0 auto}.topbar-label{display:block;color:var(--muted);font-size:11px}.topbar strong{font-size:18px}.top-controls{display:flex;align-items:center;gap:10px;min-width:0}.top-controls select,.top-controls input,.form-input{min-height:42px;padding:8px 12px;border:1px solid var(--line);background:var(--white);border-radius:9px;min-width:0;color:var(--ink)}.top-controls select{max-width:190px}.user-pill{background:var(--surface-subtle);color:var(--muted);padding:8px 12px;border-radius:8px;font-size:12px;white-space:nowrap;max-width:175px;overflow:hidden;text-overflow:ellipsis}.mobile-account{display:none}.content{padding:32px clamp(20px,3.3vw,48px) 64px;max-width:1500px;margin:auto}
.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:16px}.page-heading h1{font-family:var(--display);font-size:28px;line-height:1.35;letter-spacing:-.035em;margin:0}.page-heading p{color:var(--muted);font-size:12px;margin:8px 0 0}.heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.segment{display:flex;gap:3px;background:#e5eeea;padding:4px;border-radius:10px}.segment button{min-height:36px;border:0;background:transparent;border-radius:7px;padding:7px 14px;color:var(--muted);font-size:12px;white-space:nowrap}.segment button.active{background:var(--white);color:var(--forest);font-weight:700;box-shadow:var(--shadow)}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:20px 22px;min-height:122px;box-shadow:var(--shadow)}.stat label{display:block;color:var(--muted);font-size:12px}.stat strong{font-family:var(--data);font-size:32px;letter-spacing:-.035em;display:block;margin-top:12px;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.stat:first-child{border-top:3px solid var(--forest);padding-top:18px}.stat small{font:12px var(--font);color:var(--muted);margin-left:6px}.overview-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(290px,1fr);gap:20px;margin-top:24px}.panel{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:24px;min-width:0;box-shadow:var(--shadow)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.panel h2,.panel-head h2{font-size:16px;margin:0}.panel-head small,.subtle{color:var(--muted);font-size:11px}
.winner{background:var(--forest-deep);color:var(--white);border-radius:10px;padding:22px;position:relative;overflow:hidden;margin-bottom:18px;min-height:134px}.winner:before{content:"王";position:absolute;font-size:130px;font-weight:900;color:#ffffff0c;right:12px;bottom:-35px;line-height:1}.winner-kicker{position:relative;font-size:11px;color:var(--lime);font-weight:700;letter-spacing:.06em}.winner strong{position:relative;display:block;font-size:25px;line-height:1.35;margin:13px 0 8px;overflow-wrap:anywhere}.winner small{position:relative;color:#d2e2d9;font-size:12px}.winner.empty{background:var(--mint);color:var(--forest-deep)}.winner.empty .winner-kicker,.winner.empty small{color:var(--muted)}.winner.empty:before{color:#14624b09}.rank-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.rank-index{font-size:13px;font-weight:700;color:var(--muted)}.rank-row strong{font-size:13px;overflow-wrap:anywhere}.rank-row em{font-style:normal;color:var(--forest);font-weight:700;font-variant-numeric:tabular-nums;font-family:var(--data);font-size:14px;text-align:right}.mini-bar{height:8px;background:var(--mint);border-radius:6px;overflow:hidden;margin-top:10px}.mini-bar span{display:block;background:var(--forest);height:100%;border-radius:6px}.category-row{margin:24px 0}.category-row[data-category="水磁"] .mini-bar span{background:var(--blue)}.category-row>div:first-child{display:flex;justify-content:space-between;font-size:13px;font-weight:600}.hint{font-size:12px;color:var(--muted);margin:16px 0 0;line-height:1.7}
.review-callout{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--surface-subtle);border:1px solid var(--line);padding:16px;border-radius:10px;margin-top:24px}.review-callout strong{font-size:13px;display:block}.review-callout small{font-size:11px;color:var(--muted)}.review-callout .button{flex-shrink:0}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--white)}table{border-collapse:collapse;width:100%;min-width:900px}th,td{padding:17px 16px;text-align:left;border-bottom:1px solid var(--line);font-size:12px}th{font-size:11px;color:var(--muted);background:var(--surface-subtle);font-weight:700;white-space:nowrap}tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-subtle)}.numeric{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--data)}.mobile-reports{display:none}
.tag{display:inline-block;border-radius:6px;padding:5px 10px;font-size:11px;font-weight:700;background:var(--mint);color:var(--forest-deep)}.tag.pending,.tag.queued,.tag.running{background:var(--warning-bg);color:#825a14}.tag.rejected,.tag.failed{background:var(--danger-bg);color:var(--alert)}.empty-state{text-align:center;padding:44px 22px;color:var(--muted);font-size:13px}.empty-state strong{display:block;color:var(--ink);font-size:16px;margin-bottom:9px}.review-card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:16px;box-shadow:var(--shadow)}.review-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.review-top strong{font-size:15px}.review-top .tag{flex-shrink:0;white-space:nowrap}.review-meta{font-size:11px;color:var(--muted);margin-top:5px}.review-products{margin:18px 0;padding:14px 16px;border-radius:9px;background:var(--surface-subtle);font-size:13px;line-height:1.9}.photo-list{display:flex;gap:10px;margin:16px 0;flex-wrap:wrap}.photo-button{border:1px solid var(--line);padding:0;background:var(--surface-subtle);border-radius:9px;overflow:hidden;width:104px;height:104px;position:relative}.photo-button img{width:100%;height:100%;object-fit:cover}.photo-button span{position:absolute;bottom:0;left:0;right:0;background:#203538cc;color:var(--white);font-size:11px;padding:4px}.review-actions{display:flex;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.review-actions input{flex:1;min-width:0}.section-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px;font-size:12px;color:var(--muted)}
.rule-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:20px}.rule-card{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.rule-card:last-child{border:0}.rule-card img{width:72px;height:80px;object-fit:contain;background:var(--surface-subtle);border-radius:9px}.rule-card strong{font-size:13px;display:block}.rule-card small{color:var(--muted);font-size:11px}.rule-detail{display:flex;gap:8px 14px;align-items:center;flex-wrap:wrap;margin-top:9px;font-size:12px;color:var(--forest)}.inline-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.inline-form>.button{justify-self:start}.field{display:grid;gap:8px;margin-bottom:14px}.field label{font-size:12px;color:var(--muted)}.field input,.field textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;min-width:0;color:var(--ink);background:var(--surface-subtle)}.field textarea{resize:vertical;min-height:85px}.checkline{font-size:12px;display:flex;gap:8px;align-items:start;margin:14px 0}
.toast{position:fixed;bottom:24px;right:24px;max-width:min(420px,calc(100vw - 32px));background:var(--ink);color:var(--white);padding:14px 18px;border-radius:10px;box-shadow:0 8px 32px #20353825;z-index:8}.password-dialog{border:1px solid var(--line);border-radius:16px;padding:28px;width:min(420px,calc(100vw - 32px));box-shadow:0 25px 65px #20353825;color:var(--ink)}.password-dialog::backdrop{background:#20353870}.password-dialog h2{font-size:20px;margin:0 0 20px}.password-dialog label{display:block;font-size:12px;font-weight:700;margin:16px 0}.password-dialog input{display:block;width:100%;margin-top:8px;border:1px solid var(--line);border-radius:8px;padding:12px}.password-dialog .section-actions{margin-top:24px;justify-content:flex-end}.photo-dialog{width:min(900px,calc(100vw - 32px))}.account-actions{display:grid;gap:12px}
@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.overview-grid,.rule-layout{grid-template-columns:1fr}}
@media(max-width:700px){.login-shell{grid-template-columns:1fr}.login-card{min-height:100vh;padding:36px 24px}.login-art{display:none}.login-card h1{font-size:36px}.workspace{display:block;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.sidebar{height:auto;position:fixed;z-index:4;top:auto;bottom:0;left:0;right:0;display:block;padding:7px 6px calc(7px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);border-right:0}.side-brand,.side-bottom{display:none}.nav-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.nav-item{flex-direction:column;gap:3px;padding:5px 2px;min-height:50px;font-size:10px;text-align:center;justify-content:center}.nav-item .icon{width:19px;height:19px}.nav-item.active:before{display:none}.nav-item em{position:absolute;right:2px;top:0;font-size:9px;padding:0 5px}.topbar{height:112px;padding:12px 16px;flex-wrap:wrap;align-content:center;gap:10px}.topbar-label,.user-pill{display:none}.topbar strong{font-size:17px}.topbar-title{width:100%}.top-controls{width:100%;gap:8px}.top-controls input{width:140px;flex:0 0 auto;padding:8px;font-size:12px}.top-controls select{flex:1;width:0;font-size:12px;padding:8px}.mobile-account{display:block;min-height:42px;margin-left:auto;padding:8px 12px;flex:0 0 auto}.content{padding:24px 16px 40px}.page-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:22px}.page-heading h1{font-size:25px}.heading-actions{width:100%;justify-content:space-between;gap:8px}.stat-grid{gap:10px}.stat{padding:16px;min-height:105px}.stat:first-child{padding-top:14px}.stat strong{font-size:27px}.overview-grid{margin-top:18px;gap:16px}.panel{padding:18px}.panel-head{gap:8px;margin-bottom:16px}.panel-head h2{font-size:15px}.panel-head small{text-align:right}.winner{padding:18px}.winner strong{font-size:24px}.review-callout{flex-wrap:wrap}.review-callout .button{width:100%}.report-desktop{display:none}.mobile-reports{display:grid;gap:14px}.mobile-report{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:18px}.mobile-report-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}.mobile-report-head>strong{font:700 25px var(--data);color:var(--forest);white-space:nowrap}.mobile-report-head small{font:12px var(--font)}.mobile-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;padding:16px 0;font-size:12px}.mobile-report-grid span{display:block;color:var(--muted);margin-bottom:3px}.mobile-report-total{display:flex;justify-content:space-between;gap:12px;background:var(--mint);padding:10px 12px;border-radius:8px;font-size:12px;color:var(--forest-deep)}.review-card{padding:18px}.review-top strong{font-size:14px}.review-actions{display:grid;grid-template-columns:1fr 1fr}.review-actions input{grid-column:1/-1;width:100%;min-height:46px}.photo-button{width:90px;height:90px}.inline-form{grid-template-columns:1fr}.inline-form>.button{width:100%}.rule-card{grid-template-columns:62px minmax(0,1fr);gap:12px}.rule-card img{width:62px;height:72px}.section-actions{justify-content:space-between}.section-actions span{font-size:11px}.rank-row em{max-width:135px;overflow-wrap:anywhere}.toast{bottom:calc(88px + env(safe-area-inset-bottom,0px));right:16px;left:16px;max-width:none}}
@media(prefers-reduced-motion:no-preference){.button,.nav-item{transition:background-color .15s ease,border-color .15s ease}}

.side-account-actions{grid-column:1/-1;display:flex;gap:8px}.side-account-actions button{flex:1;min-height:36px;white-space:nowrap}

.mobile-report-head>.link-button{min-width:0;flex:1;overflow-wrap:anywhere}.mobile-report-grid>div{min-width:0;overflow-wrap:anywhere}

.category-tabs{display:flex;width:100%;margin:20px 0 16px}.category-tabs button{flex:1;min-width:0;min-height:44px}.rank-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 8px}.rank-caption h3,.rank-caption h2{font-size:14px;margin:0}.rank-caption small{font-size:11px;color:var(--muted);white-space:nowrap}

/* Brand surfaces: local type, mineral canvas, no white image mats. */
:root{--forest:#173f35;--forest-deep:#102d26;--ink:#24382f;--muted:#59665d;--paper:#e9ede8;--white:#f1f3ed;--mint:#d8e1d8;--line:#cdd6cc;--lime:#d4d9be;--gold:#7a6843;--focus:#173f35;--surface-subtle:#e4eae1;--shadow:none;--data:"Bahnschrift","SFMono-Regular",Consolas,var(--font)}
.button{border-radius:3px;font-weight:500}.brand-mark{border-radius:0;background:transparent;color:var(--forest);font-family:"STSong","SimSun",serif;font-weight:400;border:1px solid #aa946880}.brand-wordmark{font:400 24px/1.2 Arial,sans-serif;letter-spacing:.18em;color:var(--forest)}.brand-wordmark span{display:block;font:11px/1.6 var(--font);letter-spacing:.16em;margin-top:10px}.login-shell{background:var(--paper);grid-template-columns:minmax(440px,46%) 1fr}.login-card{padding-top:48px;padding-bottom:48px}.login-card h1{font-size:42px;font-weight:500;letter-spacing:.01em;line-height:1.5}.login-input,.login-card select{border:0;border-bottom:1px solid #abb9a5;border-radius:0;background:#dfe6db}.login-art{background:var(--forest-deep) url('/assets/brand/rainforest.webp') 65% center/cover no-repeat;padding:50px}.login-art:before{content:"";inset:0;background:#102d2635}.art-brand,.art-center,.art-copy{position:relative}.art-brand{font:400 24px/1.4 Arial,sans-serif;letter-spacing:.2em}.art-brand span{font-family:var(--font)}.art-center strong{font-size:48px;font-weight:400;line-height:1.6}.art-flow span{border-radius:0;border-color:#c6d3b840}.art-copy{font-weight:400;letter-spacing:.12em}.sidebar{background:var(--forest-deep);border:0;padding:34px 16px 24px}.side-brand{padding-bottom:48px;gap:14px}.side-brand .brand-mark{color:#d4ddc8;border-color:#a6976b70}.side-brand .side-wordmark{font:400 17px Arial,sans-serif;letter-spacing:.13em;color:#eef1e7}.side-brand small{color:#bac9b4;font-size:10px;margin-top:7px}.nav-list{gap:12px}.nav-item{color:#b6c8b0;border-radius:2px;font-weight:400}.nav-item:hover{background:#ffffff0c;color:#edf2e7}.nav-item.active{background:#cedbbc18;color:#eff3e8}.nav-item.active:before{background:#b7a276;border-radius:0;height:22px}.nav-item em{background:#c4d0b8;color:#102d26}.side-bottom{border-color:#ffffff20;color:#dbe4d2}.side-bottom small{color:#aebeaa}.account-icon{background:#ffffff12;color:#d5dfca}.side-bottom button{background:transparent;border-color:#ffffff25;color:#c4d2ba;border-radius:2px}.topbar{background:var(--paper);height:88px}.topbar-title strong{font-weight:500}.top-controls select,.top-controls input{background:#e2e8dd;border-radius:2px;border-color:#bdc9b7}.user-pill{background:#dde5d7;border-radius:2px}.page-heading h1{font-size:29px;font-weight:500;letter-spacing:.015em}.page-heading p{font-size:11px}.content{padding-top:32px}.management-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:186px;padding:32px 36px;background:var(--forest-deep) url('/assets/brand/rainforest.webp') center 55%/cover no-repeat;color:#edf1e6;margin-bottom:0}.hero-kicker{font-size:10px;letter-spacing:.18em;color:#d4dec9}.management-hero h2{font-size:26px;line-height:1.4;font-weight:400;margin:18px 0 10px}.management-hero p{color:#d0ddc4;font-size:11px;margin:0;line-height:1.8}.hero-side-note{font-size:11px;line-height:2;border-left:1px solid #ab98756b;padding-left:24px;flex-shrink:0}.stat-grid{gap:0;background:#dce4d9}.stat{border:0;border-right:1px solid #c2cebd;border-radius:0;background:transparent;box-shadow:none;padding:24px;min-height:130px}.stat:first-child{border-top:0;padding-top:24px}.stat:last-child{border-right:0}.stat strong{font-size:38px;font-weight:400;margin-top:14px}.stat label{font-size:11px}.stat small{font-size:11px}.panel,.review-card,.mobile-report{border:0;border-radius:2px;background:#f1f3ed;box-shadow:none}.panel{padding:28px}.panel-head h2{font-size:15px;font-weight:500}.segment{background:#dae3d5;border-radius:2px;padding:3px}.segment button{border-radius:1px}.segment button.active{background:var(--forest);color:#eff2e8;font-weight:500;box-shadow:none}.winner,.winner.empty{background:var(--forest-deep);color:#f0f3e8;border-radius:0;padding:26px}.winner:before{content:""}.winner.empty .winner-kicker,.winner.empty small{color:#c7d3bc}.winner strong{font-weight:400;font-size:28px}.winner-kicker{font-weight:400;letter-spacing:.1em}.rank-row{padding:17px 0}.rank-row strong{font-weight:500}.rank-row em{font-weight:500}.mini-bar{height:3px;border-radius:0;background:#d6e0d0}.mini-bar span{border-radius:0}.category-row{margin:32px 0}.review-callout{border:0;border-top:1px solid var(--line);background:transparent;padding:22px 0 0;border-radius:0}.table-wrap{border:0;border-radius:2px}th{background:#dfe7d9}td{padding-top:22px;padding-bottom:22px}.rule-card{grid-template-columns:100px minmax(0,1fr);padding:24px 0}.rule-card img{width:100px;height:120px;background:transparent;border:0;border-radius:0;filter:drop-shadow(0 5px 4px #193b2314)}.rule-card strong{font-weight:500}.rule-detail{font-size:11px}.review-products{border-radius:0;background:#e4eadd}.tag{border-radius:2px}.password-dialog{background:#edf1e8;border:0;border-radius:3px}.field input,.field textarea{border-radius:2px;background:#e6ece0}.photo-button{border-radius:2px}.toast{z-index:30}
@media(max-width:1100px){.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid #c2cebd}}
@media(max-width:700px){.login-shell{display:block}.login-card{padding:36px 24px}.login-card h1{font-size:34px}.sidebar{padding:7px 6px calc(7px + env(safe-area-inset-bottom,0px))}.nav-item{color:#bacab1;font-size:10px}.nav-item.active{background:#ffffff12}.topbar{height:112px}.content{padding:24px 16px 40px}.page-heading h1{font-size:25px}.management-hero{padding:28px 22px;min-height:186px;margin-left:-16px;margin-right:-16px}.management-hero h2{font-size:25px}.hero-side-note{display:none}.stat-grid{margin-left:-16px;margin-right:-16px}.stat,.stat:first-child{padding:22px 18px;min-height:118px}.stat strong{font-size:33px}.panel{padding:22px 18px}.rule-card{grid-template-columns:80px minmax(0,1fr);gap:14px}.rule-card img{width:80px;height:100px}.winner strong{font-size:25px}.mobile-report-total{border-radius:0}.user-pill{display:none}}

.sidebar button:focus-visible{outline-color:var(--lime)}a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.demo-header a:focus-visible{outline-color:var(--lime)}
/* Operate: legible task typography, restrained mineral surfaces, explicit actions. */
:root{--font:"Shulin Sans","PingFang SC","Microsoft YaHei",sans-serif;--display:var(--font);--data:"Bahnschrift",var(--font)}
body{font-size:16px;line-height:1.65}::selection{background:#bacdaf;color:#102d26}input,textarea{caret-color:var(--forest)}a{text-underline-offset:4px}button,input,select,textarea{font:inherit}.button{font-size:15px;font-weight:500;border-radius:10px;min-height:44px}.link-button{min-height:44px;font-size:15px;font-weight:500}.panel,.review-card,.mobile-report{border-radius:14px;background:#f1f3ed}.content{max-width:1600px;padding:32px 36px 56px}.page-heading{margin-bottom:28px}.page-heading h1{font-size:32px;font-weight:600;line-height:1.4;letter-spacing:-.02em}.page-heading p{font-size:14px;line-height:1.7;margin-top:8px}.panel-head h2{font-size:20px;font-weight:600}.panel-head small,.hint,.subtle{font-size:13px;line-height:1.7}.topbar-title strong{font-size:18px;font-weight:600}.topbar-label{font-size:12px}.top-controls input,.top-controls select{font-size:14px;min-height:44px;border-radius:8px}.user-pill{font-size:13px;border-radius:8px}.side-brand{padding-bottom:32px}.side-brand small{font-size:12px}.nav-list{gap:8px}.nav-item{font-size:15px;min-height:52px;border-radius:10px}.nav-item.active{background:#d6e1cb1c}.nav-item.active:before{display:none}.nav-item em{font-size:12px;border-radius:6px}.side-bottom strong{font-size:14px}.side-bottom small,.side-bottom button{font-size:12px}.side-bottom button{border-radius:6px}.segment{padding:4px;border-radius:10px;background:#d9e2d4}.segment button{font-size:14px;min-height:44px;border-radius:7px;padding:8px 18px}.category-tabs{gap:4px}.category-tabs button{padding:8px 10px}.field label,.checkline{font-size:14px}.field input,.field textarea,.form-input{font-size:16px;min-height:46px;border-radius:9px;background:#e6ece0}.field textarea{min-height:100px}.field label{margin-bottom:10px}.empty-state{font-size:14px;line-height:1.8;padding:32px 20px}.empty-state strong{font-size:18px;margin-bottom:10px;font-weight:500}.tag{font-size:12px;border-radius:6px;padding:5px 10px}.section-actions{font-size:14px}
.work-priority{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;background:var(--forest-deep);color:#eff3e9;border-radius:14px;margin-bottom:28px}.work-priority h2{font-size:23px;font-weight:500;line-height:1.5;margin:0 0 6px}.work-priority p{font-size:14px;line-height:1.7;color:#c8d6c0;margin:0}.work-priority .button{background:#d8e3c9;color:#173f35;flex-shrink:0}.stat-grid{background:transparent;border-bottom:1px solid #bfcbbc;margin-bottom:32px}.stat,.stat:first-child{background:transparent;padding:16px 24px 28px;min-height:130px;border-right:1px solid #c2cebd}.stat label{font-size:14px;font-weight:400}.stat strong{font-size:40px;font-weight:500;margin-top:12px;line-height:1.25}.stat small{font-size:14px;font-weight:400;margin-left:8px}.overview-grid{gap:28px;align-items:start}.winner,.winner.empty{border-radius:12px;padding:24px}.winner strong{font-size:28px;font-weight:500;line-height:1.4}.winner-kicker{font-size:13px;letter-spacing:0}.winner small{font-size:14px}.rank-caption h3,.rank-caption h2{font-size:18px;font-weight:600}.rank-caption small{font-size:12px}.rank-row{font-size:15px;line-height:1.65;padding:18px 0}.rank-row strong{font-weight:500}.rank-row em{font-family:var(--data);font-size:20px}.rank-link{width:100%;background:transparent;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;color:var(--ink)}.rank-link:hover{background:#e6ecdf}.rank-link .row-arrow{font-size:14px;color:var(--forest);margin-left:8px}.category-row{font-size:16px;margin:24px 0}.category-row>div:first-child{margin-bottom:12px}.mini-bar{height:6px;border-radius:3px}.mini-bar span{border-radius:3px}.review-callout{padding:22px 0 0;margin-top:32px}.review-callout strong{font-size:16px}.review-callout small{font-size:13px}
.content:has(.review-card){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.content:has(.review-card)>.page-heading,.content:has(.review-card)>.section-actions{grid-column:1/-1;margin-bottom:0}.review-card{margin:0;display:flex;flex-direction:column;padding:24px}.review-top{gap:16px}.review-top strong{font-size:17px;font-weight:600}.review-meta{font-size:13px;margin-top:8px;line-height:1.7}.review-products{font-size:15px;line-height:1.8;padding:18px 0;margin-top:16px;background:transparent;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.photo-list{gap:12px;margin:20px 0}.photo-button{border-radius:10px;overflow:hidden;background:#dfe8d8;min-height:124px}.photo-button img{width:112px;height:104px;object-fit:cover}.photo-button span{font-size:13px;padding:7px}.review-actions{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-actions input{grid-column:1/-1;width:100%;font-size:14px}.review-actions .button{font-size:15px}.photo-dialog{width:min(1000px,calc(100% - 32px));max-width:1000px;padding:24px;border-radius:16px}.photo-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.photo-viewer-head strong{font-size:18px;font-weight:500}.photo-dialog #full-photo{max-height:56vh!important}.photo-review-footer{border-top:1px solid var(--line);margin-top:20px;padding-top:20px;display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:16px}.photo-review-footer label{font-size:14px}.photo-review-footer .section-actions{margin:0;display:flex;gap:10px}.photo-review-footer input{width:100%}
.table-wrap{border-radius:12px;background:#f1f3ed}.table-wrap th{font-size:13px;font-weight:500;padding:16px 12px;white-space:normal;background:#dfe7d9}.table-wrap td{font-size:15px;line-height:1.6;padding:20px 12px}.table-wrap .numeric{font-family:var(--data);font-variant-numeric:tabular-nums}.table-wrap th.numeric{font-family:var(--font)}.table-wrap tbody tr:not(.inline-store-detail):hover{background:#e5ecdf}.table-wrap .inline-store-detail>td{padding:0;background:#e1e9db}.report-expanded{padding:24px}.report-product{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:28px;padding:16px 0;border-bottom:1px solid #c5d0bd;font-size:15px}.report-product>div strong{font-weight:500}.report-product small{display:block;font-size:12px;color:var(--muted);margin-top:6px}.report-product>strong{font-family:var(--data);font-weight:500}.mobile-report{padding:24px 20px;margin-bottom:20px}.mobile-report-grid span{font-size:13px}.mobile-report-grid strong{font-size:15px;font-weight:500}.mobile-report-total{background:#dce6d3;border-radius:8px;font-size:14px}.mobile-report-head strong{font-size:28px}.mobile-report .report-expanded{padding:24px 0 0}.mobile-report .report-product{grid-template-columns:1fr auto;gap:12px}.mobile-report .report-product>strong{grid-column:2}.mobile-report .report-product>div{grid-row:1/3}.mobile-report .report-expanded .panel-head{display:block}.mobile-report .report-expanded .panel-head h2{font-size:18px;margin-bottom:8px}
.rule-layout{grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr);gap:28px;align-items:start}.rule-catalog{padding:24px}.rule-filter{display:flex;gap:4px;margin-bottom:28px}.rule-filter button{flex:1;min-width:0;padding:8px}.rule-group{margin-top:28px}.rule-group h3{font-size:18px;font-weight:600;display:flex;align-items:baseline;gap:12px;padding-bottom:12px;margin:0;border-bottom:1px solid #bfcbbc}.rule-group h3 small{font-size:12px;font-weight:400;color:var(--muted)}.rule-card{display:grid;grid-template-columns:64px minmax(0,1fr) 90px auto;align-items:center;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}.rule-card img{width:64px;height:86px;background:transparent;filter:drop-shadow(0 5px 4px #193b2314)}.rule-copy strong{font-size:15px;font-weight:600;line-height:1.6;display:block}.rule-copy small{font-size:12px;margin-top:8px;line-height:1.6;color:var(--muted);display:block}.rule-values{display:flex;flex-direction:column;gap:8px;text-align:right;font-size:15px;line-height:1.5;font-family:var(--data)}.rule-values>span:first-child{font-family:var(--font);font-size:12px}.rule-values strong{font:500 22px/1 var(--data);margin-right:4px;display:inline}.rule-values small{display:block;font:12px/1.7 var(--font);color:var(--muted)}.rule-card>.button{padding:8px 12px;font-size:14px}.rule-aside{display:flex;flex-direction:column;gap:24px}.rule-aside>#rule-editor{position:sticky;top:20px;order:0}.rule-aside .panel{padding:24px}.rule-aside #rule-editor:empty{display:none}.tier-display{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);font-size:15px}.tier-display>strong{font:500 22px/1.2 var(--data)}.tier-display span strong{font-weight:500}.tier-labels,.tier-form-row{display:grid;grid-template-columns:1fr 1fr 44px;gap:10px;align-items:center}.tier-labels{font-size:13px;color:var(--muted);margin-bottom:12px}.tier-form-row{margin-bottom:12px}.tier-form-row input{width:100%;min-width:0;min-height:44px;padding:10px;background:#e5ebdf;border:1px solid #bccab4;border-radius:8px;font:16px var(--data)}.tier-remove{min-width:44px;min-height:44px;border:0;background:#dde6d5;border-radius:8px;font-size:22px;color:var(--forest)}.tier-editor .field{margin-top:24px}.tier-editor .button-primary{width:100%}.password-dialog{border-radius:14px}.login-card h1{font-size:38px;line-height:1.4;font-weight:600;letter-spacing:-.02em;margin:32px 0 16px}.login-card .intro{font-size:16px;line-height:1.8}.login-card label{font-size:14px}.login-input,.login-card select{font-size:16px;min-height:50px;border-radius:9px;border:1px solid #aebea6;background:#dfe6db}.login-note{font-size:13px;line-height:1.8}.demo-divider{font-size:13px}.login-art .art-caption{font-size:16px}.login-art .art-copy{font-size:16px}.login-art .art-copy span,.art-flow span{font-size:14px}
@media(max-width:1200px){.content{padding:28px 24px 48px}.rule-layout{grid-template-columns:1fr}.rule-aside{display:grid;grid-template-columns:1fr 1fr;align-items:start}.rule-aside>#rule-editor{grid-column:1/-1;position:static}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:900px){.content:has(.review-card){grid-template-columns:1fr}.photo-review-footer{grid-template-columns:1fr}.photo-review-footer .section-actions{justify-content:flex-end}.rule-card{grid-template-columns:64px minmax(0,1fr) 90px auto}}
@media(max-width:700px){.content{padding:24px 16px 40px}.page-heading h1{font-size:26px}.page-heading p{font-size:14px}.topbar{min-height:116px;height:auto;padding:14px 16px;gap:12px}.topbar-title strong{font-size:17px}.topbar-label{display:none}.top-controls input,.top-controls select{font-size:13px;min-height:44px}.sidebar{padding:8px 4px calc(8px + env(safe-area-inset-bottom,0px))}.nav-item{min-height:58px;font-size:11px;border-radius:8px}.work-priority{padding:22px 20px;display:block}.work-priority h2{font-size:21px}.work-priority p{font-size:14px}.work-priority .button{margin-top:18px;width:100%}.stat-grid{margin:0 0 28px}.stat,.stat:first-child{padding:20px 14px;min-height:116px}.stat strong{font-size:31px}.stat label{font-size:13px}.stat small{font-size:12px}.panel{padding:24px 20px}.panel-head h2{font-size:19px}.panel-head small{font-size:12px}.overview-grid{gap:24px}.rank-row{font-size:15px}.rank-row em{font-size:19px}.rule-catalog{padding:20px 16px}.rule-layout{gap:24px}.rule-aside{display:flex;gap:24px}.rule-aside .panel{padding:24px 20px}.rule-card{grid-template-columns:52px minmax(0,1fr) 76px;gap:10px}.rule-card img{width:52px;height:74px}.rule-card>.button{grid-column:2/4;width:100%;min-height:44px}.rule-copy strong{font-size:15px}.rule-copy small{font-size:12px}.rule-values{font-size:15px}.rule-values strong{font-size:21px}.review-card{padding:24px 20px}.review-top strong{font-size:16px}.review-meta{font-size:12px}.photo-button img{width:108px;height:100px}.review-actions{gap:10px}.photo-viewer-head{align-items:start}.photo-viewer-head strong{font-size:16px}.photo-dialog{padding:20px 16px}.photo-dialog #full-photo{max-height:46vh!important}.login-card{padding:32px 24px}.login-card h1{font-size:32px}.login-card .intro{font-size:15px}}


.report-chevron{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;margin-left:5px}.link-button[aria-expanded=true] .report-chevron{transform:rotate(180deg)}

.photo-review-message{grid-column:1/-1;margin:0;padding:12px 16px;background:#fcece7;color:#903628;border-radius:8px;font-size:14px;line-height:1.7}

/* User direction: warm editorial lettering with deep forest and glass. */
:root{--paper:#0b211c;--ink:#eee8da;--muted:#bdc9bc;--white:#f3eedf;--line:#aebbab35;--mint:#ded8c7;--gold:#d5bc89;--glass:rgba(17,42,33,.7);--glass-line:rgba(217,207,175,.2);--reading:#efeadd;--reading-ink:#283b31;--reading-muted:#455447;--editorial:"Shulin Editorial","Songti SC","STSong","SimSun",serif}
body{position:relative;isolation:isolate;background:#0b211c;color:#eee8da}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0b211ce8 10%,#0b211c9c 66%,#0b211c77),url('/assets/brand/rainforest.webp') 75% center/cover no-repeat}::selection{background:#d5bc89;color:#102d26}.workspace,.main-area{background:transparent}.sidebar{background:rgba(6,23,19,.72);border-right:1px solid #d5bc8930;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding-top:36px}.side-brand .brand-mark{border:1px solid #cdb68866;border-radius:50%;color:#dfc898;font-family:var(--editorial)}.side-brand .side-wordmark{font-size:18px;letter-spacing:.14em;color:#efe6d2}.side-brand small{font-size:11px;color:#c6c6b3}.nav-item{color:#c1cdbd;font-size:14px;font-weight:400;min-height:52px;background:transparent}.nav-item.active{background:#d6c7a01a;color:#f2dfb4;box-shadow:inset 0 0 0 1px #d1bc8829}.nav-item:hover{background:#d6c7a016}.nav-list{gap:10px}.sidebar button:focus-visible{outline-color:#dfc898}.side-bottom{border-color:#bcb99733}.side-bottom strong,.side-bottom button{color:#dedfcf}.account-icon{background:#d5bc8918;color:#dcc796;border-radius:50%}.topbar{height:84px;background:rgba(9,30,24,.48);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid #b2bfaa29}.topbar-title strong{font-size:14px;letter-spacing:.04em;color:#d5d9c9;font-weight:400}.topbar-label{font-size:11px;color:#bdc9b7}.top-controls input,.top-controls select{background:#f7f2e610;color:#e5e5d4;border-color:#b9c0a838;border-radius:10px}.top-controls input::-webkit-calendar-picker-indicator{filter:invert(.85)}.user-pill{background:#d5bc8914;color:#d6d6be;border:1px solid #d5bc8926;border-radius:10px}.content{padding:36px 40px 56px}.page-heading{margin-bottom:32px;align-items:end}.page-heading h1{font-family:var(--editorial);font-size:38px;font-weight:500;color:#f0e6cf;letter-spacing:.01em;line-height:1.4}.page-heading p{font-size:13px;color:#bac7b7;margin-top:10px}.heading-actions .button-light{background:#d5bc8924;color:#eadab6;border:1px solid #d5bc8936}.segment{background:#d5bc8914;border:1px solid #d5bc8930;border-radius:10px;padding:4px}.segment button{color:#c7ceb8;font-size:13px}.segment button.active{background:#ded0ae;color:#19392d;font-weight:500}
.panel,.review-card,.mobile-report,.table-wrap,.password-dialog{--ink:var(--reading-ink);--muted:var(--reading-muted);--line:#9aa99155;color:var(--reading-ink);background:var(--reading);border:0;box-shadow:0 12px 32px #00150c20}.panel{border-radius:16px;padding:28px}.panel-head h2{font-size:20px;font-weight:500}.panel-head small,.hint{color:var(--muted)}.panel .segment{background:#d3d0bd;border:0}.panel .segment button{color:#566652}.panel .segment button.active{background:#1c4534;color:#f1ead7}.panel .button-light,.review-card .button-light,.mobile-report .button-light{background:#d7ddca;color:#244b33}.panel .field input,.panel .field textarea,.form-input{color:#283b31;background:#e7e4d6;border:1px solid #a5b09770}.password-dialog{border-radius:16px}.password-dialog label,.password-dialog h2,.password-dialog p{color:#283b31}
.work-priority{background:rgba(184,163,108,.13);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid #d2bd892e;border-radius:16px;padding:22px 28px;margin-bottom:28px;box-shadow:0 10px 32px #00140c18}.work-priority h2{font:500 22px/1.5 var(--font);color:#ebdec1}.work-priority p{font-size:13px;color:#c4ceb7}.work-priority .button{background:#e0cda4;color:#173c2b;border-radius:10px;min-width:126px}.stat-grid{background:transparent;border-bottom:1px solid #d5bc893d;padding:0 0 20px;margin-bottom:32px;grid-template-columns:1.35fr repeat(3,minmax(0,1fr))}.stat,.stat:first-child{padding:8px 24px 12px;min-height:120px;border-color:#d5bc8930}.stat label{font-size:13px;color:#c2ccb7}.stat strong{font-size:34px;color:#eae8d3;font-weight:400;line-height:1.2}.stat:first-child strong{font-size:52px;color:#e2c58e}.stat small{font-size:13px;color:#c2ccb7}.stat:first-child{padding-left:0}.overview-grid{grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:32px}.overview-grid>section:first-child{background:transparent;color:#e6e6d4;padding:0;box-shadow:none;--ink:#e6e6d4;--muted:#bdc9b8;--line:#a5b79538}.overview-grid>section:first-child>.panel-head{padding:0 0 18px;margin-bottom:0;border-bottom:1px solid #d5bc8930}.overview-grid>section:first-child .panel-head h2{color:#e5dcc4}.overview-grid>section:first-child .panel-head small{color:#c1cbb6}.winner,.winner.empty{background:linear-gradient(90deg,#102d26ed,#102d2666),url('/assets/brand/rainforest.webp') right center/cover no-repeat;color:#eee5cc;border:1px solid #d5bc8930;border-radius:14px;padding:28px;margin-top:20px;min-height:192px;display:flex;flex-direction:column;justify-content:center}.winner strong{font-family:var(--editorial);font-size:34px;line-height:1.45;font-weight:500;color:#ebd4a2;letter-spacing:.04em}.winner-kicker{font-size:12px;color:#dfc898;letter-spacing:.08em}.winner small,.winner.empty small{color:#cedac1;font-size:13px}.overview-grid>section:first-child .segment{background:#f5ecd910;border:1px solid #d5bc892c}.overview-grid>section:first-child .segment button{color:#cad1bd}.overview-grid>section:first-child .segment button.active{background:#ded0ae;color:#19392d}.rank-caption h3{font-size:17px;font-weight:500;color:inherit}.rank-row{color:var(--ink)}.rank-link:hover{background:#d5bc8910}.rank-link .row-arrow{color:#dfc898}.overview-grid>section:first-child .empty-state{background:#d5bc890c;border-radius:12px;font-size:13px}.overview-grid>section:first-child .empty-state strong{color:#e7dcc0}.overview-grid>section:nth-child(2){background:rgba(233,228,212,.9);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid #eee6d12b;padding:28px}.category-row{margin:26px 0;font-size:14px}.mini-bar{height:5px;background:#c8cfbb}.category-row[data-category="水磁"] .mini-bar span{background:#487b68}.category-row[data-category="白瓶"] .mini-bar span{background:#938566}.category-row[data-category="防脱"] .mini-bar span{background:#936641}.review-callout{margin-top:28px;border-top-color:#a7b29366}.review-callout strong{font-size:15px}.review-callout small{font-size:12px}
.table-wrap{background:#ebe8db;border-radius:12px}.table-wrap th{background:#1c4031;color:#e7e3cf;font-size:13px;font-weight:400;border-bottom:1px solid #c6b58b55;padding:18px 12px}.table-wrap td{background:transparent;font-size:14px;border-bottom-color:#9bac9133}.table-wrap td:last-child{background:#dacbaa55;color:#20412e}.table-wrap td .link-button{color:#234a32;font-size:14px}.table-wrap tbody tr:not(.inline-store-detail):hover{background:#d9dfcc}.report-expanded{background:#dce3cf;color:#283b31}.report-expanded h2{font-size:18px}.report-product{border-color:#b2bea0}.mobile-report-total{background:#dbd0b6;color:#28422f}.mobile-report-head .link-button{color:#234a32}.inline-store-detail .panel-head small{color:#5d6a54}
.rule-catalog{background:transparent;padding:0;box-shadow:none;color:#e9e4d2;--ink:#e9e4d2;--muted:#bdc9b5;--line:#9eb18c30}.rule-catalog>.panel-head{border-bottom:1px solid #d5bc8933;padding-bottom:20px;margin-bottom:24px}.rule-catalog .rule-filter{background:#f5ecd910;border:1px solid #d5bc892c}.rule-catalog .rule-filter button{color:#cad1bd}.rule-catalog .rule-filter button.active{background:#ded0ae;color:#19392d}.rule-group{margin-top:32px}.rule-group h3{font-family:var(--editorial);font-size:23px;font-weight:500;color:#e1cca1;border-bottom-color:#d5bc8930;padding-bottom:18px}.rule-group h3 small{font-family:var(--font);font-size:12px;color:#b7c6ae}.rule-card{padding:20px 0;border-bottom-color:#9ab18735}.rule-card img{width:64px;height:88px;filter:drop-shadow(0 8px 6px #00000033)}.rule-copy strong{font-size:15px;color:#e9e4d2;font-weight:500}.rule-copy small{color:#bdc9b5}.rule-values{color:#e6d4ad}.rule-values small{color:#bdc9b5}.rule-card>.button{color:#e7d8b8;background:#d5bc8918;border:1px solid #d5bc892c;min-width:62px;border-radius:8px}.rule-aside{gap:24px}.rule-aside>.panel{background:rgba(231,225,208,.9);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.rule-aside .tier-display>strong{color:#6f5534;font-size:24px}.tier-form-row input{background:#eee9da;color:#283b31}.tier-remove{background:#d6ddc8;color:#244b33}.tier-editor .field label{color:#445d40}.tier-editor .hint{font-size:12px}.rule-aside .empty-state strong{font-family:var(--editorial);font-size:22px;font-weight:500}.rule-aside .empty-state{font-size:13px}
.review-card{border-radius:12px;background:rgba(237,232,216,.93);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.review-top strong{font-size:17px;font-weight:500}.review-meta{color:#5a6b54}.photo-button{background:#d9dfc9;border-radius:8px}.photo-button span{color:#4b6145}.review-products{border-color:#acb89f66}.content:has(.review-card):not(:has(>.review-card)){display:block}.content>section .review-card{border-radius:0;background:transparent;box-shadow:none;border-bottom:1px solid #acb89f66;padding:24px 0;backdrop-filter:none}.content>section .review-card:last-of-type{border-bottom:0}.photo-dialog{background:#ebe6d8}.photo-review-footer label{color:#283b31}.photo-review-message{color:#903628!important}.section-actions{color:inherit}.tag{font-size:12px}.login-shell{background:transparent;grid-template-columns:minmax(440px,46%) 1fr}.login-card{background:rgba(9,28,22,.5);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:56px}.login-card .brand-wordmark{color:#e7d5aa}.login-card .brand-wordmark span{color:#c3ceb7}.login-card h1{font-family:var(--editorial);font-size:42px;line-height:1.6;font-weight:400;color:#efe2c4}.login-card .intro,.login-note{color:#c7cfb9}.login-card label{color:#d6dac8}.login-input,.login-card select{background:#f3ead515;color:#efe4ca;border-color:#d5bc8938}.login-card select option{background:#1b3d2d;color:#f0e6cf}.login-input::placeholder{color:#b5c4ab}.login-card .button-primary{background:#deca9f;color:#153d2a}.login-card .button-light{background:#f3ead511;color:#e5d5b0;border:1px solid #d5bc8938}.demo-divider{color:#c5cfb8;border-top-color:#d5bc8930}.login-art{background:#0d261c url('/assets/brand/rainforest.webp') center/cover no-repeat}.art-brand{color:#e6d4aa}.art-center strong{font-family:var(--editorial);font-size:46px;line-height:1.7;color:#efe1bf}.art-caption,.art-copy,.art-flow{color:#d7dfc6}.art-copy span{color:#bccdaf}
@media(max-width:1200px){.content{padding:28px 24px 48px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(2){border-right:0}.stat:first-child{padding-left:24px}.overview-grid{grid-template-columns:1fr}.rule-layout{grid-template-columns:1fr}}
@media(max-width:700px){.content{padding:24px 16px 40px}.page-heading h1{font-size:29px}.page-heading p{font-size:12px}.topbar{height:auto;min-height:104px;background:rgba(9,30,24,.75)}.topbar-title strong{font-size:15px}.sidebar{border-right:0;border-top:1px solid #d5bc892e;background:rgba(6,23,19,.86);padding:8px 4px calc(8px + env(safe-area-inset-bottom,0px))}.nav-item{font-size:11px;min-height:58px}.work-priority{padding:22px 20px}.work-priority h2{font-size:21px}.work-priority p{font-size:13px}.stat,.stat:first-child{padding:16px 14px;min-height:110px}.stat strong{font-size:30px}.stat:first-child strong{font-size:42px}.stat label{font-size:12px}.overview-grid{gap:28px}.winner,.winner.empty{min-height:178px;padding:24px}.winner strong{font-size:30px}.overview-grid>section:nth-child(2){padding:24px 20px}.rule-group h3{font-size:22px}.rule-catalog{padding:0}.rule-aside .panel{padding:24px 20px}.rule-card{grid-template-columns:52px minmax(0,1fr) 76px}.rule-card img{width:52px;height:78px}.rule-copy strong{font-size:15px}.rule-card>.button{background:#d5bc8918}.login-card{padding:36px 24px}.login-card h1{font-size:33px}.login-shell{display:block}.mobile-account{background:#d5bc891a;color:#eadab6}}
@supports not (backdrop-filter:blur(1px)){.sidebar,.topbar{background:#102b21}.work-priority{background:#253c2b}.review-card,.rule-aside>.panel,.overview-grid>section:nth-child(2){background:#e7e2d4}}

:root{--focus:#d6bd89}.panel,.review-card,.mobile-report,.table-wrap,.password-dialog{--focus:#173f35}

.sidebar #change-password,.sidebar #logout{color:#dedfcf;border-color:#d5bc8940}.review-card{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(237,232,216,.96)}
/* Let the photography recede behind working text. */
body:before{background:linear-gradient(180deg,#0b211cc4 0%,#0b211ceb 35%,#0b211cf7 70%),url('/assets/brand/rainforest.webp') 75% center/cover no-repeat}
.overview-grid>section:nth-child(2){background:#ccd1bd;backdrop-filter:none;-webkit-backdrop-filter:none}
.rule-group h3{color:#e9e4d2}
.rule-aside>.panel{background:#e7e2d4;backdrop-filter:none;-webkit-backdrop-filter:none}
/* Directional light and elevation: architecture, reading surface, foreground. */
:root{--motion-ease:cubic-bezier(.16,1,.3,1);--raised-shadow:0 14px 30px #000e084d,0 3px 8px #000e082e}
.sidebar{box-shadow:16px 0 38px #000a0738,inset -1px 0 0 #e7dfba12}
.topbar{box-shadow:0 10px 26px #000d0838,inset 0 1px 0 #eee4bc14}
.work-priority{border:0;background:linear-gradient(125deg,#354933,#203729 72%);box-shadow:var(--raised-shadow),inset 0 1px 0 #eee5c838,inset 0 -1px 0 #071b1470}
.stat-grid{border:0;border-radius:14px;background:linear-gradient(145deg,#e3e8c60a,#04191033);box-shadow:inset 0 1px 0 #e2dabc18,inset 0 -1px 0 #07181180;padding:8px 0}
.overview-grid>section:nth-child(2){border:0;background:linear-gradient(135deg,#dedfca,#c6ceb6 78%);box-shadow:var(--raised-shadow),inset 0 1px 0 #f4eed37a}
.table-wrap,.mobile-report,.rule-aside>.panel,.review-card{border:0;box-shadow:0 14px 30px #000e083d,inset 0 1px 0 #fff4d860}
.winner{border:0;box-shadow:0 12px 28px #000e084d,inset 0 1px 0 #e4d1a12b}
.button-primary{background:linear-gradient(140deg,#ead7ae,#cfb781);color:#153d2a;box-shadow:0 5px 12px #000e0840,inset 0 1px 0 #fff6d875,inset 0 -1px 0 #90784450}
.button,.nav-item,.segment button,.rule-filter button,.link-button{transition:background-color 160ms,color 160ms,box-shadow 180ms,transform 160ms var(--motion-ease)}
button:not(:disabled):active{transform:translateY(1px)}
.photo-dialog[open],.password-dialog[open]{animation:shulin-dialog-in 240ms var(--motion-ease)}
@keyframes shulin-dialog-in{from{opacity:.6;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media(hover:hover){.button-primary:not(:disabled):hover{box-shadow:0 8px 20px #000e0859,inset 0 1px 0 #fff6d890;transform:translateY(-2px)}.nav-item:hover{background:#e3d5ac18}.rule-card:hover{background:#e6d8b007}}
@media(prefers-reduced-motion:reduce){.button,.nav-item,.segment button,.rule-filter button,.link-button{transition:background-color 100ms,color 100ms}.photo-dialog[open],.password-dialog[open]{animation:none}button:not(:disabled):active,.button-primary:not(:disabled):hover{transform:none}}
