/* Secret Beauty headquarters: restrained grape accents and readable business data. */
.product-copy-fields{display:grid;gap:18px}.media-editor{margin-top:8px;border-top:1px solid #e5e3e9;padding-top:22px}.media-editor-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.media-editor-heading h3{margin:0;font-size:17px}.media-editor-heading>span{font-size:12px;color:#706b79}.media-editor .media-section{border:1px solid #e5e3e9;border-radius:12px;padding:18px;margin-bottom:16px;background:#fff}.media-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.media-editor .media-section h4{margin:0;font-size:14px}.media-section-heading p{margin:6px 0 0;color:#706b79;font-size:12px;line-height:1.7}.media-count{margin-left:10px;font-size:11px;color:#827b8a;font-weight:400}.media-upload-button{position:relative;flex-shrink:0;padding:9px 13px;border:1px solid #ded2e5;border-radius:7px;color:#61436d;background:#f7f3f9;font-size:12px;font-weight:600;cursor:pointer;overflow:hidden}.media-upload-button:hover{background:#f0ebf3}.media-upload-button input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.media-upload-button:focus-within{outline:2px solid #9979a9;outline-offset:3px}.media-editor .media-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.media-editor .media-item{padding:0;border-radius:9px;overflow:hidden;background:#fbfafc}.media-editor .media-item img,.media-editor .media-placeholder{height:140px;display:block;object-fit:contain;background:#f5f4f7;border-radius:0;padding:8px}.media-editor .media-image-label{font-size:11px;margin:9px 10px 5px;color:#61436d;font-weight:600}.media-editor .media-item>div:last-child{padding:0 8px 9px;gap:4px}.media-editor .media-item button{background:#fff;border:1px solid #e5e3e9;color:#706b79;padding:5px 6px;font-size:11px}.media-editor .media-item button.media-remove{margin-left:auto;color:#a5403a;border-color:#edd8d6}.media-editor .media-item button:disabled{opacity:.35}.media-empty{grid-column:1/-1;min-height:100px;border:1px dashed #d8cddd;border-radius:8px;background:#faf8fc;display:flex;align-items:center;justify-content:center;gap:12px;color:#827b8a}.media-empty>span{font-size:28px;color:#a18aa9}.media-empty p{font-size:12px;margin:0}.media-feedback{margin-top:12px;font-size:12px;color:#26765d;line-height:1.8;overflow-wrap:anywhere}.media-feedback:empty{display:none}.media-feedback.failed{color:#a5403a;background:#fff3f1;padding:10px;border-radius:7px}.media-footnote{font-size:11px;color:#827b8a;line-height:1.8;margin:0}@media(max-width:600px){.media-editor .media-section{padding:14px}.media-section-heading{flex-wrap:wrap}.media-editor .media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-editor .media-item img{height:120px}.media-editor-heading{align-items:flex-start}.media-empty{padding:16px}}
.media-section h4{margin:8px 0 12px;font-size:14px}.media-section input{max-width:100%;font-size:13px}.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.media-item{border:1px solid #e5e3e9;border-radius:8px;padding:8px;min-width:0}.media-item img,.media-placeholder{width:100%;height:110px;object-fit:contain;background:#f5f6f8;border-radius:4px}.media-placeholder{display:grid;place-items:center;font-size:12px}.media-item span{display:block;font-size:12px;margin:6px 0}.media-item>div:last-child{display:flex;flex-wrap:wrap;gap:6px}.media-item button{border:0;background:#f0ebf3;color:#61436d;border-radius:4px;font-size:12px;padding:5px}@media(max-width:600px){.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
:root{font-family:"PingFang SC","Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif;color:#292631;background:#f5f6f8;--accent:#61436d;--accent-dark:#493252;--muted:#706b79;--line:#e5e3e9;--paper:#fff;--green:#26765d;--shadow:0 3px 14px rgba(41,38,49,.035)}
body{line-height:1.55}button,input,select,textarea{font-family:inherit}button{touch-action:manipulation}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #9b7dac;outline-offset:3px}input,select,textarea{accent-color:var(--accent)}
.sidebar{width:236px;padding:28px 16px 14px;background:#fff;overflow-y:auto;overscroll-behavior:contain}.brand{padding:0 12px 24px;gap:12px}.brand b{font-size:19px;letter-spacing:2px}.brand small{font-size:11px;color:var(--muted)}.brand-mark{border-radius:12px;background:var(--accent);font-family:"Songti SC",SimSun,serif}.small-mark{width:42px;height:42px;border-radius:11px;font-size:23px}.main-nav{gap:3px}.nav-group-label{padding:17px 13px 6px;font-size:11px;font-weight:600;color:#8a8492}.nav-group-label:first-child{padding-top:0}.nav-item{min-height:42px;border-radius:7px;color:#615b69;font-size:13px;padding:10px 13px;gap:12px}.nav-item span{color:#887591;font-size:17px}.nav-item:hover{background:#f7f4f8;color:var(--accent)}.nav-item.active{background:#f0ebf3;color:#493252;box-shadow:inset 3px 0 var(--accent)}.sidebar-foot{margin-top:24px;font-size:10px;color:#8a8492}.navigation-toggle{display:none}
.main-area{margin-left:236px}.topbar{min-height:90px;padding:18px 32px;background:#fffffff5;border-color:var(--line)}.topbar-kicker{color:var(--muted);font-size:11px}.topbar h2{margin-top:3px;font-size:23px;letter-spacing:-.5px}.top-actions{gap:12px}.local-mode-label{background:#f0ebf3;color:#61436d;border-radius:6px;max-width:180px;overflow-wrap:anywhere}.updated-label{color:#827b8a}.icon-button{width:38px;height:38px;border-radius:8px;color:var(--accent)}.page-content{max-width:1600px;padding:28px 32px 56px}
.welcome-row{margin-bottom:25px;gap:18px}.welcome-title{font-size:23px;font-weight:600}.welcome-subtitle{color:var(--muted);line-height:1.7}.date-chip{border-radius:6px;color:var(--muted);background:transparent}.stats-grid{gap:16px}.stat-card{border-radius:10px;padding:22px;box-shadow:none}.stat-top{color:var(--muted);font-size:13px}.stat-icon{background:#f0ebf3;color:var(--accent);border-radius:8px;width:30px;height:30px}.stat-value{font-size:30px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.7px;margin-top:15px}.stat-note{color:#827b8a;font-size:11px}.panel,.data-card{border-color:var(--line);border-radius:10px;box-shadow:none}.panel{padding:24px}.panel-head{margin-bottom:20px}.panel-head h3{font-size:16px}.status-row{border-color:var(--line)}.status-caption{color:var(--muted)}.status-count{background:#f0ebf3;color:var(--accent);border-radius:6px}.quick-action{min-height:88px;border-radius:8px;background:#faf9fb;padding:16px}.quick-action:hover{border-color:#b9a5c2;background:#f4eff6}.quick-action strong{font-size:13px}.quick-action span{color:var(--muted)}
.toolbar{flex-wrap:wrap;gap:14px;margin-bottom:20px}.toolbar-left,.toolbar-right{flex-wrap:wrap;min-width:0}.search-input,.filter-select{height:42px;font-size:13px;border-radius:7px;border-color:#dcd8e1;color:#292631}.search-input:focus,.filter-select:focus{outline:2px solid #c6b6d0;outline-offset:1px}.button{min-height:40px;border-radius:7px;font-size:13px;padding:0 16px;background:#fff;border-color:var(--line);color:#615b69}.button-primary{background:var(--accent);border-color:var(--accent);color:#fff}.button-muted:hover{background:#f6f3f8}.button-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.button-quiet{background:#f7f3f9;border-color:#dfd5e5;color:var(--accent)}.button-danger{background:#fff5f4;border-color:#efd2ce;color:#a5403b}.button-small{min-height:32px;padding:0 11px;font-size:12px}.text-link{font-size:12px;color:var(--accent);padding:7px 4px}.text-link:hover{text-decoration:underline;text-underline-offset:4px}
.table-wrap{border-radius:9px;border-color:var(--line);box-shadow:none;scrollbar-color:#c8bfce #f7f5f8}table{font-variant-numeric:tabular-nums}th{padding:15px 16px;background:#f4f2f6;color:#6c6374;font-size:12px}td{padding:16px;border-color:#eeebf1;font-size:13px}tbody tr:hover{background:#faf8fc}.cell-main{color:#292631}.cell-sub{color:#706b79;font-size:11px;line-height:1.65;max-width:320px;white-space:normal;overflow-wrap:anywhere}.actions{flex-wrap:wrap;gap:6px}.status{padding:4px 9px;border-radius:5px;font-size:11px;background:#efedf2;color:#655d6d}.status.pending{background:#fff2d9;color:#8b5c14}.status.shipped,.status.accepted,.status.approved{background:#e9f4ee;color:#27644d}.product-avatar{background:#f0ebf3;color:var(--accent);border-radius:8px}.empty-state{padding:56px 20px;color:var(--muted);line-height:1.8}.section-title{font-size:16px;margin:28px 0 14px}.request-card{border-radius:9px;padding:20px}.request-title{font-size:14px}.request-meta,.request-detail{color:var(--muted)}.form-hint{color:var(--muted);font-size:12px;line-height:1.8;overflow-wrap:anywhere}.ledger-form{border-radius:9px;padding:22px;gap:16px}.field-label{color:#62596c;font-size:12px;line-height:1.6}.field-input,.field-select,.field-textarea,.login-card input{border-color:#dcd8e1;border-radius:7px;color:#292631;font-size:14px;min-height:44px}.field-input:focus,.field-select:focus,.field-textarea:focus,.login-card input:focus{border-color:#9979a9;box-shadow:0 0 0 3px #61436d15}.check-row{color:#62596c;line-height:1.7}.balance-negative{color:#ad423d}
.action-dialog{width:min(94vw,620px);max-height:calc(100dvh - 48px);border-radius:14px;border-color:#dcd8e1;box-shadow:0 24px 90px #29263138}.action-dialog::backdrop{background:#29263166;backdrop-filter:blur(4px)}.dialog-head{padding:20px 26px;background:#fff;position:sticky;top:0;z-index:1}.dialog-head h3{font-size:18px}.dialog-close{width:36px;height:36px;color:#665370;background:#f0ebf3;line-height:1}.dialog-close:hover{background:#e4dbea}.dialog-content{padding:24px 26px;gap:18px}.dialog-content>p{margin:0;font-size:13px;line-height:1.8;overflow-wrap:anywhere}.dialog-actions{padding:16px 26px;background:#fbfafc;position:sticky;bottom:0;z-index:1}.dialog-error{background:#fff2f0;color:#a23e35}.dialog-error:empty{display:none}.permission-group{border-color:var(--line);border-radius:8px}.permission-grid{gap:12px}.role-summary .panel{border-left:3px solid #b49ac1}.role-summary p{color:var(--muted);line-height:1.8}.audit-filter{background:#fff;padding:20px;border:1px solid var(--line);border-radius:9px}.audit-pagination{flex-wrap:wrap;gap:12px;font-size:13px}.toast{background:#493252;border-radius:8px;font-size:13px}.loading{color:var(--muted)}
.login-shell{background:#f5f6f8;padding:32px}.login-card{width:min(460px,100%);padding:42px;background:#fff;border-color:var(--line);border-radius:16px;box-shadow:0 18px 70px #61436d0c;border-top:4px solid var(--accent)}.login-card h1{font-size:27px;letter-spacing:-.5px}.login-card>p{color:var(--muted);font-size:13px}.login-card .field-label{margin:22px 0}.login-card .button{min-height:46px}
@media(max-width:1200px){.sidebar{width:216px}.main-area{margin-left:216px}.topbar{padding:18px 24px}.page-content{padding:24px}.top-actions{gap:8px}.updated-label{display:none}}
@media(max-width:900px){.sidebar{position:sticky;inset:auto;top:0;width:100%;height:auto;display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px 18px;overflow:visible;border-right:0;border-bottom:1px solid var(--line);z-index:4}.brand{padding:0}.brand b{font-size:16px}.brand small{display:block;font-size:10px}.small-mark{width:34px;height:34px;font-size:20px}.sidebar-foot{display:none}.navigation-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:1px solid #dcd8e1;border-radius:7px;background:#fff;color:var(--accent);font-size:13px}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 80px);overflow:auto;background:#fff;padding:18px;box-shadow:0 20px 35px #2926311c;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px}.navigation-open .main-nav{display:grid}.nav-group-label{grid-column:1/-1}.nav-item{width:100%;font-size:13px;justify-content:flex-start}.nav-item span{display:inline-block;width:20px}.main-area{margin-left:0}.topbar{position:static;padding:18px 20px;gap:14px;flex-wrap:wrap;min-height:88px}.topbar h2{font-size:22px}.top-actions{flex-wrap:wrap}.page-content{padding:22px 20px 40px}.dashboard-grid{grid-template-columns:1fr}.role-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.topbar{align-items:flex-start;gap:12px}.top-actions{width:100%;gap:8px}.top-actions .icon-button{margin-left:auto}.local-mode-label{max-width:50vw}.page-content{padding:18px 14px 36px}.welcome-row{align-items:flex-start;flex-direction:column;gap:12px}.welcome-title{font-size:21px}.date-chip{padding:0;border:0;font-size:12px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{padding:16px}.stat-value{font-size:25px}.stat-top{font-size:12px}.panel{padding:18px}.toolbar-left,.toolbar-right{width:100%;flex-wrap:wrap;gap:8px}.search-input{flex:1 1 180px;width:100%;min-width:0}.filter-select{max-width:100%;flex:1 1 130px}.toolbar-right .button{flex:1}.ledger-form,.metric-form,.audit-filter,.permission-grid,.role-summary{grid-template-columns:1fr}.ledger-form{padding:18px}.ledger-form .button{grid-column:auto}.request-head{flex-wrap:wrap}.request-actions .button{min-height:40px}.action-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:12px}.dialog-head{padding:16px 18px}.dialog-content{padding:20px 18px}.dialog-actions{padding:14px 18px}.dialog-actions .button{flex:1;min-height:44px}.dialog-content .ledger-form{min-width:0}.dialog-content .field-label{min-width:0}th,td{padding:13px 12px}.login-shell{padding:20px}.login-card{padding:30px 24px}.loading{padding:35px 12px}.toast{right:14px;bottom:14px}.quick-actions{gap:10px}.quick-action{padding:13px}.audit-filter-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Desktop compact navigation keeps every permitted destination accessible. */
.page-heading{display:flex;align-items:center;gap:16px}.nav-label{font-weight:inherit}.sidebar-collapse{flex-shrink:0;font-size:26px}
@media(min-width:901px){.sidebar-collapsed .sidebar{width:80px;padding:24px 10px 14px}.sidebar-collapsed .main-area{margin-left:80px}.sidebar-collapsed .brand{padding:0 0 22px;justify-content:center}.sidebar-collapsed .brand>span:last-child,.sidebar-collapsed .nav-label,.sidebar-collapsed .sidebar-foot{display:none}.sidebar-collapsed .nav-group-label{font-size:0;padding:0;margin:10px 8px 4px;height:1px;background:#e5e3e9}.sidebar-collapsed .nav-item{justify-content:center;padding:11px;min-height:44px}.sidebar-collapsed .nav-item>span{font-size:20px;width:24px}.sidebar-collapsed .nav-item.active{box-shadow:inset 3px 0 #61436d}}
@media(max-width:900px){.sidebar-collapse{display:none}}

.franchise-region-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}.franchise-region-fields .field-input{min-width:0}
@media(max-width:600px){.franchise-region-fields{grid-template-columns:1fr}}

/* Audit details: concise overview, readable values, paired changes. */
.audit-detail-dialog{width:min(94vw,820px)}
.audit-detail-dialog .dialog-content{background:#faf9fc}
.audit-detail-dialog .dialog-actions [data-dialog-close]{display:none}
.audit-detail-view{display:grid;gap:22px;min-width:0;color:#322b3c}
.audit-overview{padding:22px;background:#fff;border:1px solid #e6e1eb;border-top:3px solid #8e6aaa;border-radius:10px}
.audit-overview-title{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.audit-overview-title h4{margin:0;font-size:18px;line-height:1.5}
.audit-overview>p{margin:10px 0 18px;color:#786d80;font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.audit-outcome{flex-shrink:0;padding:5px 10px;border-radius:6px;background:#eeeaf3;color:#645572;font-size:12px;font-weight:600}
.audit-outcome-success{background:#eaf5ef;color:#367754}.audit-outcome-failed{background:#fff0ee;color:#ad4b43}.audit-outcome-processing{background:#fff6e3;color:#946820}
.audit-meta{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin:0}
.audit-meta-item{min-width:0}.audit-meta-wide{grid-column:1/-1}
.audit-meta dt{font-size:12px;color:#8a7f92;margin-bottom:5px}.audit-meta dd{margin:0;font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.audit-detail-section>h4{display:flex;align-items:center;gap:10px;font-size:14px;margin:0 0 12px}.audit-detail-section>h4>span{font-size:12px;font-weight:400;color:#908698}
.audit-values{margin:0;border:1px solid #e6e1eb;border-radius:8px;background:#fff;overflow:hidden}
.audit-value-row{display:grid;grid-template-columns:145px minmax(0,1fr);border-bottom:1px solid #eeeaf2}.audit-value-row:last-child{border:0}
.audit-value-row dt{padding:13px 16px;font-size:12px;color:#7d7188;background:#f7f5fa}.audit-value-row dd{margin:0;padding:13px 16px;min-width:0}
.audit-detail-view pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-family:inherit;font-size:13px;line-height:1.75;max-height:260px;overflow:auto;background:transparent;border:0;padding:0;color:inherit}
.audit-change{border:1px solid #e6e1eb;border-radius:8px;background:#fff;overflow:hidden;margin-top:10px}.audit-change h5{margin:0;padding:12px 16px;background:#f7f5fa;font-size:13px}
.audit-change-values{display:grid;grid-template-columns:1fr 1fr}.audit-change-values>div{padding:14px 16px;min-width:0}.audit-before{border-right:1px solid #eeeaf2}.audit-after{background:#f3f8f5}.audit-change-values span{display:block;margin-bottom:8px;font-size:11px;color:#8a7f92}.audit-after span{color:#4c8064}
.audit-detail-empty{padding:20px 16px;color:#93869c;font-size:13px;line-height:1.7;background:#fff;border-radius:8px}
.audit-detail-error{border-left:3px solid #cb6a60;background:#fff1ef;padding:14px 16px;border-radius:6px;color:#a44b43;font-size:13px}.audit-detail-error p{margin:8px 0;overflow-wrap:anywhere;line-height:1.7}
.audit-trace{border-top:1px solid #e4dfea;padding-top:16px}.audit-trace summary{cursor:pointer;color:#887893;font-size:12px}.audit-trace .audit-meta{margin-top:16px}.audit-trace p{margin-bottom:0}
@media(max-width:600px){.audit-detail-dialog{width:calc(100vw - 20px)}.audit-overview{padding:16px}.audit-overview-title h4{font-size:16px}.audit-meta{grid-template-columns:1fr;gap:14px}.audit-value-row{grid-template-columns:1fr}.audit-value-row dt{padding:9px 12px}.audit-value-row dd{padding:12px}.audit-change-values{grid-template-columns:1fr}.audit-before{border-right:0;border-bottom:1px solid #eeeaf2}.audit-detail-view{gap:18px}}

.franchise-filter{display:grid;grid-template-columns:minmax(220px,2fr) minmax(130px,1fr) minmax(120px,1fr) auto;gap:14px;align-items:end;background:#fff;border:1px solid var(--line);padding:18px;border-radius:9px}.franchise-filter-actions{display:flex;gap:8px}.franchise-filter .field-label{min-width:0}
@media(max-width:900px){.franchise-filter{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.franchise-filter{grid-template-columns:1fr}.franchise-filter-actions .button{flex:1}}

.brand-mark img{width:100%;height:100%;object-fit:contain;border-radius:inherit;background:#fff}.brand-logo-upload{display:flex;align-items:center;justify-content:center;min-height:160px;border:1px dashed #b6a3c5;background:#faf8fc;border-radius:12px;cursor:pointer;position:relative}.brand-logo-upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.brand-logo-upload img{display:block;width:120px;height:120px;object-fit:contain}

.product-avatar.product-cover{width:60px;height:60px;flex:0 0 60px;overflow:hidden;border:1px solid #e8e2ed;background:#f5f2f8;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:11px;color:#9a8da3}.product-cover img{display:block;width:100%;height:100%;object-fit:cover}.product-cover-placeholder{font-size:11px;font-weight:400}.product-cover-failed{font-size:11px}

.franchise-tabs{display:flex;gap:6px;padding:5px;background:#eeeaf3;border-radius:9px}.franchise-tabs button{border:0;background:transparent;border-radius:6px;padding:11px 18px;color:#83728f;font:inherit;cursor:pointer}.franchise-tabs button[aria-selected="true"]{background:#fff;color:#634574;box-shadow:0 2px 6px #58416d12;font-weight:600}

.discount-sync-row{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#f5f1f8;border:1px solid #e6ddec;border-radius:10px;padding:16px}.discount-sync-row strong{display:block;font-size:14px;color:#634574}.discount-sync-row small{display:block;margin-top:7px;font-size:12px;line-height:1.7;color:#8b7a95}.discount-sync-row input{appearance:none;flex:0 0 42px;width:42px;height:24px;background:#cdc5d3;border-radius:16px;position:relative;cursor:pointer;transition:background .15s}.discount-sync-row input:before{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}.discount-sync-row input:checked{background:#77558c}.discount-sync-row input:checked:before{transform:translateX(18px)}.discount-sync-row input:focus-visible{outline:2px solid #77558c;outline-offset:3px}.discount-sync-row input:disabled{opacity:.5;cursor:wait}
