:root{--commerce-red: #d71920;--commerce-red-soft: #fff1f1;--ink: #1f2329;--muted: #68717d;--line: #e4e7eb;--canvas: #f4f5f7;--surface: #ffffff;--success: #15803d;--success-soft: #edf9f0;--warning: #b45309;--info: #2563eb}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink)}button{font:inherit}.admin-login-shell{display:grid;min-height:100vh;place-items:center;background:linear-gradient(90deg,var(--commerce-red) 0 6px,transparent 6px),var(--canvas);padding:24px}.admin-login-panel{width:min(100%,420px);border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 12px 32px #1f23291a;padding:30px}.login-brand{display:flex;align-items:center;gap:10px;color:var(--commerce-red);font-size:17px}.login-heading{margin:30px 0 22px}.login-heading h2{margin:0;font-size:25px}.login-heading p,.login-loading{color:var(--muted);font-size:13px;margin:7px 0 0}.login-loading{margin-top:24px}.login-form{display:grid;gap:17px}.login-form label{display:grid;gap:7px;color:#3d444e;font-size:13px;font-weight:650}.login-form .ant-input,.login-form .ant-input-affix-wrapper{min-height:42px}.login-form .ant-btn{min-height:42px;margin-top:4px}.login-error{border-left:3px solid var(--commerce-red);background:var(--commerce-red-soft);color:#a50e15;font-size:12px;margin:0;padding:9px 11px}.admin-shell{min-height:100vh;background:var(--canvas)}.section-anchor{scroll-margin-top:18px}.admin-sidebar{position:fixed;z-index:10;inset:0 auto 0 0;display:flex;width:212px;flex-direction:column;border-right:1px solid var(--line);background:#fff}.brand-block{display:flex;min-height:60px;align-items:center;gap:8px;background:var(--commerce-red);color:#fff;padding:0 18px}.brand-block strong{font-size:18px}.brand-block span{margin-left:auto;border:1px solid rgba(255,255,255,.5);border-radius:4px;font-size:11px;padding:2px 5px}.role-switcher{display:grid;min-height:44px;grid-template-columns:20px 1fr 16px;gap:8px;align-items:center;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);margin:16px 12px 8px;padding:0 11px;text-align:left}.admin-sidebar nav{overflow-y:auto;padding:0 12px 16px}.nav-group{margin-top:14px}.nav-group p{margin:0 0 5px;color:#8b929c;font-size:11px}.nav-group button{display:flex;width:100%;min-height:38px;align-items:center;gap:10px;border:0;border-radius:5px;background:transparent;color:#4c535d;cursor:pointer;font-weight:650;margin-bottom:2px;padding:0 10px;text-align:left}.nav-group button.active,.nav-group button:hover{background:var(--commerce-red-soft);color:var(--commerce-red)}.nav-group button.active{box-shadow:inset 3px 0 0 var(--commerce-red)}.collapse-button{display:flex;min-height:46px;align-items:center;gap:8px;border:0;border-top:1px solid var(--line);background:#fff;color:var(--muted);margin-top:auto;padding:0 20px}.collapse-button svg{transform:rotate(90deg)}.sidebar-collapsed .admin-sidebar{width:64px}.sidebar-collapsed .brand-block,.sidebar-collapsed .collapse-button{justify-content:center;padding-inline:0}.sidebar-collapsed .brand-block strong,.sidebar-collapsed .brand-block span,.sidebar-collapsed .role-switcher,.sidebar-collapsed .nav-group p,.sidebar-collapsed .nav-group button:not(.active),.sidebar-collapsed .nav-group button.active{font-size:0}.sidebar-collapsed .nav-group button{justify-content:center;padding-inline:0}.sidebar-collapsed .nav-group button svg{width:18px;height:18px}.sidebar-collapsed .collapse-button svg{transform:none}.sidebar-collapsed .admin-main{max-width:calc(100vw - 64px);margin-left:64px}.admin-main{min-width:0;max-width:calc(100vw - 212px);margin-left:212px;padding:18px}.admin-header,.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-header{min-height:48px;align-items:center;margin-bottom:14px}.admin-header h2,.panel-heading h2{margin:0;letter-spacing:0}.admin-header h2{font-size:25px}.admin-header p,.panel-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}.franchise-select{min-width:132px}.acceptance-banner{display:flex;min-height:42px;align-items:center;gap:8px;border:1px solid #bfd3f5;border-radius:5px;background:#f2f7ff;color:#315a96;font-size:12px;margin-bottom:12px;padding:0 13px}.overview-grid{display:grid;grid-template-columns:minmax(520px,1.2fr) minmax(420px,.8fr);gap:12px;margin-bottom:12px}.todo-panel,.quick-panel,.workspace-panel,.settlement-panel,.empty-state{border:1px solid var(--line);border-radius:6px;background:var(--surface)}.todo-panel,.quick-panel{padding:14px 16px}.todo-panel h2,.quick-panel h2{margin:0 0 12px;font-size:17px}.todo-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.todo-item{display:grid;grid-template-columns:36px 1fr;gap:10px;border-right:1px solid var(--line);padding:4px 14px}.todo-item:first-child{padding-left:0}.todo-item:last-child{border-right:0}.todo-icon{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%}.todo-icon.primary{background:var(--commerce-red-soft);color:var(--commerce-red)}.todo-icon.info{background:#eef4ff;color:var(--info)}.todo-icon.success{background:var(--success-soft);color:var(--success)}.todo-icon.warning{background:#fff7e8;color:var(--warning)}.todo-item p{margin:0;color:var(--muted);font-size:12px}.todo-item strong{color:var(--ink);font-size:24px;line-height:1.15}.todo-item button{border:0;background:transparent;color:var(--info);font-size:12px;padding:0}.quick-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.quick-action-grid button{display:grid;min-height:70px;place-items:center;gap:6px;border:0;border-right:1px solid var(--line);background:#fff;color:#424852;cursor:pointer}.quick-action-grid button:last-child{border-right:0}.quick-action-grid button:hover,.quick-action-grid button:first-child{color:var(--commerce-red)}.quick-action-grid span{font-size:12px}.workspace-grid{display:grid;grid-template-columns:minmax(620px,1.1fr) minmax(460px,.9fr);gap:12px}.catalog-management{display:grid;gap:12px}.catalog-management .workspace-panel{width:100%}.workspace-single{margin-top:12px}.catalog-thumb,.catalog-management .ant-image-img{object-fit:cover;border-radius:4px}.catalog-thumb-placeholder{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px dashed #cfd4dc;border-radius:4px;background:#f7f8fa;color:var(--muted);font-size:11px}.image-upload-field{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:14px;border:1px solid var(--line);border-radius:5px;background:#fafbfc;padding:12px}.image-upload-preview{display:grid;width:96px;height:96px;place-items:center;overflow:hidden;border:1px dashed #c7ccd4;border-radius:5px;background:#fff;color:#9299a4}.image-upload-preview .ant-image-img{object-fit:cover}.image-upload-field strong{display:block;color:#343a43;font-size:13px}.image-upload-field p{margin:5px 0 10px;color:var(--muted);font-size:12px}.product-create-form{max-height:min(68vh,680px);overflow-y:auto;padding-right:4px}.workspace-panel,.settlement-panel,.orders-panel{min-width:0;padding:14px 16px}.finance-surface{background:var(--surface)}.panel-heading{align-items:center;margin-bottom:12px}.panel-heading h2{font-size:18px}.admin-main .ant-table-wrapper{min-width:0}.admin-main .ant-table{font-size:12px}.admin-main .ant-table-thead>tr>th{background:#f7f8fa;color:#363b44;font-weight:750}.admin-main .ant-table-tbody>tr>td{color:#444b55}.admin-main .ant-btn-link{height:auto;padding:0}.status-success{display:inline-flex;align-items:center;gap:4px;border-radius:4px;background:var(--success-soft);color:var(--success);font-size:11px;font-weight:700;padding:3px 6px}.panel-actions{margin-top:12px}.table-more{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--info);font-size:12px;margin-top:10px;padding:0}.settlement-panel{margin-top:12px}.orders-panel{border:1px solid var(--line);border-radius:6px;background:var(--surface);margin-top:12px}.order-status-select{min-width:120px}.settlement-tabs{display:flex;width:fit-content;overflow:hidden;border:1px solid var(--line);border-radius:5px;margin-bottom:10px}.settlement-tabs button{min-width:74px;min-height:30px;border:0;border-right:1px solid var(--line);background:#fff;color:var(--muted);cursor:pointer;padding:0 12px}.settlement-tabs button:last-child{border-right:0}.settlement-tabs button.active{background:var(--commerce-red-soft);color:var(--commerce-red);font-weight:750}.attachment-note{display:flex;width:fit-content;max-width:100%;min-height:34px;align-items:center;gap:7px;border:1px solid #bfddc8;border-radius:5px;background:var(--success-soft);color:var(--success);font-size:12px;margin-bottom:10px;padding:0 9px}.attachment-note button{display:inline-flex;border:0;background:transparent;color:inherit;cursor:pointer;padding:3px}.table-more .rotated{transform:rotate(180deg)}.payable-value{color:var(--ink)}.ledger-note{display:flex;min-height:42px;align-items:center;gap:8px;border:1px solid #e7eaf0;border-radius:5px;background:#fafbfc;color:var(--muted);font-size:12px;margin-top:10px;padding:0 12px}.ledger-note svg{color:var(--info)}.ledger-note strong{color:#333943}.empty-state{display:flex;min-height:46px;align-items:center;gap:9px;margin-top:12px;padding:0 14px}.empty-state svg,.empty-state strong{color:var(--success)}.empty-state span{color:var(--muted);font-size:12px}.hidden-file-input{display:none}.dialog-form{display:grid;gap:15px;padding-top:4px}.dialog-form label{display:grid;gap:7px;color:#3d444e;font-size:13px;font-weight:650}.dialog-form .ant-input-number,.dialog-form .ant-select{width:100%}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-note{border-left:3px solid var(--info);background:#f4f7fb;color:var(--muted);font-size:12px;margin:0;padding:9px 11px}.dialog-description{color:#4f5864;line-height:1.7;margin:8px 0 0}.explanation-list{display:grid;gap:0}.explanation-list>div{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);color:var(--muted)}.explanation-list>div strong{color:var(--ink);text-align:right}.explanation-list .explanation-total{border-bottom:0;color:var(--ink);font-size:15px}.explanation-list .explanation-total strong{color:var(--commerce-red);font-size:18px}@media(max-width:1350px){.workspace-grid{grid-template-columns:1fr}}@media(max-width:1180px){.overview-grid{grid-template-columns:1fr}}@media(max-width:820px){.admin-login-shell{place-items:start center;padding:40px 16px}.admin-login-panel{padding:24px 20px}.admin-sidebar{position:sticky;z-index:20;top:0;width:auto;border-right:0;border-bottom:1px solid var(--line)}.sidebar-collapsed .admin-sidebar{width:auto}.brand-block{min-height:56px}.role-switcher,.collapse-button{display:none}.admin-sidebar nav{display:flex;gap:4px;overflow-x:auto;padding:6px 8px;scrollbar-width:thin}.nav-group{display:flex;gap:4px;margin:0}.nav-group p{display:none}.nav-group button{width:auto;min-height:34px;flex:0 0 auto;margin:0;padding:0 10px;white-space:nowrap}.sidebar-collapsed .nav-group button,.sidebar-collapsed .nav-group button.active{font-size:inherit}.admin-main{max-width:none;margin-left:0;padding:12px}.sidebar-collapsed .admin-main{max-width:none;margin-left:0}.admin-header,.panel-heading{align-items:flex-start;flex-direction:column}.admin-header .ant-space{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto}.admin-header .ant-space-item{min-width:0}.admin-header .ant-space-item:first-child .franchise-select{width:100%}.image-upload-field{grid-template-columns:80px minmax(0,1fr)}.image-upload-preview{width:80px;height:80px}.admin-header .ant-space-item:nth-child(3){grid-column:1;justify-self:start}.admin-header .ant-space-item:nth-child(4){grid-column:2;justify-self:end}.todo-strip,.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.todo-item:nth-child(2){border-right:0}.todo-item:nth-child(-n+2){border-bottom:1px solid var(--line);padding-bottom:12px}.todo-item:nth-child(n+3){padding-top:12px}.quick-action-grid button:nth-child(2){border-right:0}.quick-action-grid button:nth-child(-n+2){border-bottom:1px solid var(--line)}.settlement-tabs{width:100%;overflow-x:auto}.settlement-tabs button{flex:0 0 auto}.ledger-note{align-items:flex-start;flex-wrap:wrap;padding:10px 12px}.form-grid{grid-template-columns:1fr}}
