:root{--bg:#f0f2f5;--panel:#ffffff;--text:#111827;--text-secondary:#374151;--muted:#6b7280;--line:#e5e7eb;--line-strong:#d1d5db;--brand:#0d6b5e;--brand-light:#e6f4f1;--brand-dark:#0a5449;--brand-hover:#0b5f53;--sidebar-bg:#111827;--sidebar-text:#e5e7eb;--sidebar-active-bg:rgba(255,255,255,0.10);--status-pending:#92400e;--status-pending-bg:#fffbeb;--status-inline:#065f46;--status-inline-bg:#ecfdf5;--status-notinline:#374151;--status-notinline-bg:#f3f4f6;--status-download:#1e40af;--status-download-bg:#eff6ff;--status-callback:#7c3aed;--status-callback-bg:#f5f3ff;--status-invalid:#991b1b;--status-invalid-bg:#fef2f2;--status-duplicate:#4b5563;--status-duplicate-bg:#f9fafb;--status-closed:#6b7280;--status-closed-bg:#f3f4f6;--status-new:#0369a1;--status-new-bg:#f0f9ff;--danger:#dc2626;--danger-bg:#fef2f2;--danger-border:#fecaca;--success:#059669;--success-bg:#ecfdf5;--success-border:#a7f3d0;--warning:#d97706;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow:0 1px 3px rgba(0,0,0,0.10),0 1px 2px rgba(0,0,0,0.06);--radius:8px;--radius-sm:6px}*,:after,:before{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.entry-shell,.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#f0f2f5,#e8f4f1)}.entry-panel{width:min(440px,100%);padding:36px 32px}.entry-panel,.login-panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.login-panel{width:min(400px,100%);padding:32px 28px}.entry-panel h1{margin:8px 0 28px;font-size:28px;line-height:1.25;color:var(--text)}.login-panel h1{margin:8px 0 24px;font-size:24px;line-height:1.25}.eyebrow{margin:0;color:var(--brand);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.entry-actions{display:flex;gap:10px;flex-wrap:wrap}.button,.primary-link,.secondary-link{min-height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);padding:0 16px;border:1px solid var(--line);font-weight:500;font-size:14px;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s;text-decoration:none;background:var(--panel);color:var(--text)}.button.primary,.primary-link{background:var(--brand);border-color:var(--brand);color:white;box-shadow:0 1px 2px rgba(13,107,94,.2)}.button.primary:hover,.primary-link:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.button:not(.primary):hover,.secondary-link:hover{background:#f9fafb;border-color:var(--line-strong)}.button:disabled{cursor:not-allowed;opacity:.5}.button.danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.button.danger:hover{background:#fee2e2}.compact-button{min-height:30px;padding:0 10px;font-size:13px}.full-width{width:100%}.text-link{color:var(--brand);font-weight:600}.text-link:hover{text-decoration:underline}.back-link{display:inline-flex;align-items:center;gap:4px;margin-bottom:14px;font-size:14px}.admin-shell{min-height:100vh;display:grid;grid-template-columns:220px 1fr;align-items:start}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-text);padding:0;display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-title{margin:0;padding:20px 20px 14px;font-size:16px;font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.nav-list{display:grid;grid-gap:2px;gap:2px;padding:12px 10px}.nav-item{padding:9px 12px;border:0;border-radius:var(--radius-sm);background:transparent;color:#9ca3af;cursor:pointer;font-size:14px;font-weight:500;text-align:left;transition:background .12s,color .12s}.nav-item:disabled{cursor:not-allowed;opacity:.6}.nav-item:hover{background:rgba(255,255,255,.06);color:#e5e7eb}.nav-item.active{background:var(--sidebar-active-bg);color:#fff}.notification-widget{position:relative;margin:auto 10px 12px}.notification-button{display:inline-flex;align-items:center;gap:8px;width:100%;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);background:rgba(255,255,255,.06);color:#d1d5db;cursor:pointer;font-size:13px;font-weight:600;text-align:left}.notification-button:hover{background:rgba(255,255,255,.1);color:#fff}.notification-button:disabled{cursor:not-allowed;opacity:.65}.notification-button[data-connected=true] .notification-button-status{color:#34d399}.notification-button[data-connected=false] .notification-button-status{color:#fbbf24}.notification-button span{flex:1 1;min-width:0}.notification-icon-wrap{position:relative;display:inline-flex;flex:0 0 auto}.notification-dot{position:absolute;top:-8px;right:-10px;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border:2px solid #111827;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:800;line-height:1}.notification-popover{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:30;display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);background:#111827;box-shadow:0 18px 40px rgba(0,0,0,.32);color:#e5e7eb}.notification-popover-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.icon-text-button{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;color:#93c5fd;cursor:pointer;font-size:12px;font-weight:700}.icon-text-button:disabled{cursor:not-allowed;opacity:.45}.notification-preview-list{display:grid;grid-gap:6px;gap:6px}.notification-preview-item{display:grid;grid-gap:3px;gap:3px;width:100%;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);background:rgba(255,255,255,.06);color:#d1d5db;cursor:pointer;text-align:left}.notification-preview-item[data-read=false]{border-color:rgba(239,68,68,.48)}.notification-preview-item strong{color:#fff;font-size:12px}.notification-preview-item span{overflow:hidden;color:#9ca3af;display:-webkit-box;font-size:12px;-webkit-line-clamp:2;-webkit-box-orient:vertical}.admin-main{padding:24px 28px;overflow:auto}.page-title{margin:0 0 20px;font-size:22px;font-weight:700;color:var(--text)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.page-header .page-title{margin-bottom:2px}.page-subtitle{margin:0;color:var(--muted);font-size:13px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:20px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px 16px;box-shadow:var(--shadow-sm);transition:box-shadow .15s}.metric:hover{box-shadow:var(--shadow)}.metric-label{margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.metric-value{margin:0;font-size:32px;font-weight:700;color:var(--text);line-height:1.1}.table-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);margin-bottom:16px}.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);background:#fafafa}.table-toolbar strong{font-size:14px;font-weight:600;color:var(--text-secondary)}.filter-bar{flex-wrap:wrap}.filter-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.toolbar-input,.toolbar-select{min-height:36px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 10px;background:var(--panel);font-size:14px;color:var(--text);transition:border-color .12s,box-shadow .12s}.toolbar-input:focus,.toolbar-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(13,107,94,.12)}.toolbar-input{width:min(260px,100%)}.toolbar-select{min-width:140px}.table-scroll{overflow-x:auto}.empty-state{color:var(--muted);text-align:center;padding:32px 0!important;font-size:14px}.nowrap{white-space:nowrap}.muted-text{display:block;margin-top:2px;color:var(--muted);font-size:12px}.data-table{width:100%;border-collapse:collapse}.data-table td,.data-table th{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;vertical-align:middle}.data-table th{color:var(--text-secondary);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;border-bottom-color:var(--line-strong)}.data-table tbody tr{transition:background .12s}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:#f9fafb}.status-pill{display:inline-flex;align-items:center;min-height:22px;border-radius:999px;padding:0 9px;font-size:12px;font-weight:500;white-space:nowrap;background:var(--brand-light);color:var(--brand-dark)}.status-pill.status-pending,.status-pill.status-pending-ops,.status-pill[data-status=pending_ops]{background:var(--status-pending-bg);color:var(--status-pending)}.status-pill.status-new,.status-pill[data-status=new]{background:var(--status-new-bg);color:var(--status-new)}.status-pill.status-in-line,.status-pill.status-inline,.status-pill[data-status=in_line]{background:var(--status-inline-bg);color:var(--status-inline)}.status-pill.status-not-in-line,.status-pill[data-status=not_in_line]{background:var(--status-notinline-bg);color:var(--status-notinline)}.status-pill.status-downloaded,.status-pill[data-status=downloaded]{background:var(--status-download-bg);color:var(--status-download)}.status-pill.status-not-downloaded,.status-pill[data-status=not_downloaded]{background:var(--status-notinline-bg);color:var(--status-notinline)}.status-pill.status-need-more-info,.status-pill[data-status=need_more_info]{background:var(--status-pending-bg);color:var(--status-pending)}.status-pill.status-need-callback,.status-pill[data-status=need_callback]{background:var(--status-callback-bg);color:var(--status-callback)}.status-pill.status-callback-submitted,.status-pill[data-status=callback_submitted]{background:var(--status-download-bg);color:var(--status-download)}.status-pill.status-callback-approved,.status-pill[data-status=callback_approved]{background:var(--status-inline-bg);color:var(--status-inline)}.status-pill.status-invalid,.status-pill[data-status=invalid]{background:var(--status-invalid-bg);color:var(--status-invalid)}.status-pill.status-duplicate,.status-pill[data-status=duplicate]{background:var(--status-duplicate-bg);color:var(--status-duplicate)}.status-pill.status-closed,.status-pill[data-status=closed]{background:var(--status-closed-bg);color:var(--status-closed)}.count-badge{justify-content:center;min-width:18px;height:18px;margin-left:4px;padding:0 6px;background:var(--status-callback-bg);color:var(--status-callback);font-size:11px;font-weight:700}.count-badge,.mini-status-pill{display:inline-flex;align-items:center;border-radius:999px}.mini-status-pill{min-height:20px;padding:0 8px;font-size:12px;font-weight:500}.mini-status-pill.need-callback{background:var(--status-callback-bg);color:var(--status-callback)}.mini-status-pill.callback-submitted{background:var(--status-download-bg);color:var(--status-download)}.mini-status-pill.closed{background:var(--status-closed-bg);color:var(--status-closed)}.mini-status-pill.other{background:var(--brand-light);color:var(--brand-dark)}.error-banner{padding:11px 14px;border-bottom:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger);font-size:14px}.error-banner.compact{margin-bottom:14px}.error-banner.compact,.page-error{border:1px solid var(--danger-border);border-radius:var(--radius-sm)}.page-error{margin:0 0 16px}.success-banner{padding:11px 14px;border-bottom:1px solid var(--success-border);background:var(--success-bg);color:var(--success);font-size:14px}.success-banner.compact{margin-bottom:14px;border:1px solid var(--success-border);border-radius:var(--radius-sm)}.supplier-submit-success{display:flex;align-items:center;gap:8px;padding:16px 18px;border-width:2px;font-size:16px;font-weight:700;animation:supplier-submit-success-fade 5s ease forwards}@keyframes supplier-submit-success-fade{0%,72%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.detail-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start}.detail-content,.detail-layout{display:grid;grid-gap:16px;gap:16px}.detail-panel{overflow:visible}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--line)}.detail-item{min-height:72px;display:grid;align-content:center;grid-gap:4px;gap:4px;padding:12px 14px;background:var(--panel)}.detail-item span{color:var(--muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.detail-item strong{overflow-wrap:anywhere;font-size:14px;color:var(--text)}.list-panel{display:grid;grid-gap:0;gap:0}.attachment-row{display:grid;grid-template-columns:100px minmax(0,1fr) 140px;grid-gap:12px;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line);font-size:13px}.attachment-row strong{overflow-wrap:anywhere;color:var(--brand)}.attachment-preview{display:block;max-height:72px;max-width:140px;object-fit:contain;border-radius:4px;border:1px solid var(--line)}.attachment-row small{color:var(--muted)}.image-lightbox-trigger{display:inline-flex;width:-moz-fit-content;width:fit-content;max-width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:zoom-in}.image-lightbox-trigger.compact{height:32px;width:32px}.image-lightbox{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px}.image-lightbox-backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.72);cursor:zoom-out}.image-lightbox-content{position:relative;z-index:1;display:grid;grid-gap:10px;gap:10px;max-height:calc(100vh - 48px);max-width:min(1080px,calc(100vw - 48px))}.image-lightbox-content img{display:block;max-height:calc(100vh - 96px);max-width:100%;object-fit:contain;border-radius:var(--radius-sm);background:white;box-shadow:0 24px 60px rgba(0,0,0,.32)}.image-lightbox-close{position:absolute;top:8px;right:8px;height:32px;width:32px;border:1px solid rgba(255,255,255,.6);border-radius:999px;background:rgba(15,23,42,.72);color:white;cursor:pointer;font-size:22px;line-height:1}.image-lightbox-caption{justify-self:center;max-width:100%;padding:6px 10px;border-radius:var(--radius-sm);background:rgba(15,23,42,.72);color:white;font-size:13px}.callback-details summary{display:flex;align-items:center;gap:6px;cursor:pointer}.callback-details .callback-timeline{margin-top:10px;border:1px solid var(--line);border-radius:var(--radius-sm)}.timeline{display:grid;grid-gap:0;gap:0;margin:0;padding:0;list-style:none}.timeline li{padding:12px 14px;border-bottom:1px solid var(--line)}.timeline li:last-child{border-bottom:none}.timeline p{margin:4px 0 0;color:var(--muted);font-size:13px}.timeline small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.timeline-head{display:flex;justify-content:space-between;gap:12px;font-size:14px;font-weight:500}.timeline-head span{color:var(--muted);white-space:nowrap;font-weight:400;font-size:12px}.callback-attachment-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.callback-attachment{display:grid;grid-gap:6px;gap:6px;width:150px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);cursor:pointer;text-align:left}.callback-attachment span{color:var(--muted);font-size:12px;font-weight:600}.callback-attachment img{width:100%;height:88px;object-fit:contain;border:1px solid var(--line);border-radius:4px;background:white}.callback-attachment strong{color:var(--brand);font-size:13px}.action-panel{position:-webkit-sticky;position:sticky;top:16px}.action-panel-body{display:grid;grid-gap:16px;gap:16px;padding:14px}.action-group{display:grid;grid-gap:8px;gap:8px}.action-group h3,.modal h3{margin:0;font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.button-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px}.button-grid .button,.button-grid form{width:100%}.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toggle-pill{display:inline-flex;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--panel)}.toggle-pill form{display:inline-flex;margin:0}.toggle-pill button{min-width:44px;min-height:26px;padding:0 10px;border:0;border-radius:0;background:var(--panel);color:var(--text-secondary);cursor:pointer;font-size:12px}.toggle-pill button:hover{background:#f9fafb}.toggle-pill button.is-active{background:var(--brand);color:white}.toggle-pill>button{border-radius:20px}.toggle-pill form:first-child button{border-radius:20px 0 0 20px}.toggle-pill form:last-child button{border-radius:0 20px 20px 0}.binary-switch{display:inline-flex;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:#f3f4f6}.binary-switch form{display:inline-flex;margin:0}.binary-switch button{min-width:44px;min-height:28px;padding:0 12px;border:0;border-radius:0;background:transparent;color:var(--muted);cursor:pointer;font-size:12px;font-weight:600;transition:background .12s,color .12s}.binary-switch button:hover{background:rgba(0,0,0,.04)}.binary-switch form:first-child button{border-radius:999px 0 0 999px}.binary-switch form:last-child button{border-radius:0 999px 999px 0}.binary-switch[data-state=yes] .binary-switch-yes{background:var(--success);color:white}.binary-switch[data-state=no] .binary-switch-no{background:var(--danger);color:white}.form-panel{padding:14px}.settings-toggle-field{margin-bottom:14px}.qr-preview{display:block;width:60px;height:60px;object-fit:contain;border:1px solid var(--line);border-radius:4px;background:white}.qr-upload-form{max-width:360px}.qr-quota-cell{display:grid;grid-gap:8px;gap:8px;align-items:start}.qr-limit-form{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.qr-limit-input{width:80px;min-width:80px;min-height:30px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:4px 8px;background:var(--panel);color:var(--text);font-size:13px}.validity-warning{padding:10px 12px;border:1px solid #fed7aa;border-radius:var(--radius-sm);background:#fff7ed;color:#9a3412;font-size:13px}.modal{width:min(460px,calc(100% - 32px));border:1px solid var(--line);border-radius:var(--radius);padding:20px;color:var(--text);box-shadow:0 4px 24px rgba(0,0,0,.12)}.modal::-webkit-backdrop{background:rgba(17,24,39,.4)}.modal::backdrop{background:rgba(17,24,39,.4)}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.form-stack{display:grid;grid-gap:14px;gap:14px}.field{display:grid;grid-gap:6px;gap:6px}.field label,.field>span{color:var(--text-secondary);font-size:13px;font-weight:500}.field input,.field select,.field textarea{width:100%;min-height:42px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:8px 12px;background:var(--panel);color:var(--text);font-size:14px;transition:border-color .12s,box-shadow .12s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(13,107,94,.12)}.field textarea{min-height:100px;resize:vertical}.field-error{margin:0;color:var(--danger);font-size:12px;font-weight:500}.field-help{margin:0;color:var(--muted);font-size:12px}.upload-preview{position:relative;width:-moz-fit-content;width:fit-content;max-width:100%}.upload-preview img{display:block;max-height:120px;max-width:180px;object-fit:contain;border:1px solid var(--line);border-radius:6px;background:white}.upload-remove-button{position:absolute;top:-8px;right:-8px;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--danger-border);border-radius:999px;background:var(--danger-bg);color:var(--danger);font-size:18px;line-height:1;cursor:pointer;box-shadow:var(--shadow-sm)}.upload-remove-button:disabled{cursor:not-allowed;opacity:.55}.screenshot-paste-zone{padding:12px;border:2px dashed var(--line);border-radius:var(--radius);background:var(--bg);cursor:pointer;transition:border-color .15s,background .15s}.screenshot-paste-zone:focus,.screenshot-paste-zone:hover{outline:none;border-color:var(--brand);background:var(--panel)}.mini-shell{min-height:100vh;padding:0;background:#f8f9fa;max-width:540px;margin:0 auto}.mini-header{background:var(--brand);color:white;padding:16px 16px 20px}.mini-title{margin:0 0 16px;padding:16px 16px 0;font-size:20px;font-weight:700;color:var(--text)}.mini-header .mini-title{margin:0 0 4px;padding:0;color:white}.mini-subtitle{margin:0;font-size:13px;color:rgba(255,255,255,.75)}.mini-shell>.error-banner,.mini-shell>.form-stack,.mini-shell>.mini-result,.mini-shell>.mini-success,.mini-shell>.mini-tabs,.mini-shell>.success-banner,.mini-shell>.table-panel{margin-left:16px;margin-right:16px}.mini-nav-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;padding:16px;margin-top:-8px}.mini-nav-card{background:white;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-sm);transition:box-shadow .12s,transform .12s}.mini-nav-card:active{transform:scale(.97)}.mini-nav-card-icon{font-size:22px}.mini-nav-card-label{font-size:15px;font-weight:600;color:var(--text)}.mini-nav-card-desc{font-size:12px;color:var(--muted)}.mini-stats-card{background:rgba(255,255,255,.15);border-radius:10px;padding:12px 14px;margin-top:12px;display:grid;grid-template-columns:repeat(5,1fr);grid-gap:8px;gap:8px}.mini-stat-item{text-align:center}.mini-stat-value{font-size:20px;font-weight:700;color:white;line-height:1}.mini-stat-label{font-size:11px;color:rgba(255,255,255,.75);margin-top:3px}.mini-skeleton{display:inline-flex;width:min(180px,100%);height:16px;border-radius:6px;background:linear-gradient(90deg,#eef1f5,#f7f8fa,#eef1f5);background-size:200% 100%;animation:shimmer 1.5s infinite}.mini-skeleton.short{width:96px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.mini-content{padding:16px}.mini-row-button{white-space:nowrap}.mini-detail-panel{display:grid;grid-gap:14px;gap:14px;padding:14px}.mini-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.mini-requirement p{margin:6px 0 0;font-size:14px}.mini-back-button{margin:0 0 12px;border:0;background:transparent;padding:0;display:inline-flex;align-items:center;gap:4px;color:var(--brand);font-size:14px;font-weight:500}.mini-result,.mini-success{margin:0;border:1px solid var(--success-border);border-radius:var(--radius-sm);padding:12px 14px;background:var(--success-bg);color:var(--success)}.mini-result ul{margin:8px 0 0;padding-left:20px}.mini-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.mini-tabs button{min-height:40px;border:0;background:white;color:var(--muted);font-weight:500;font-size:14px}.mini-tabs button.active{background:var(--brand);color:white}.mini-batch-table input{width:120px;min-height:34px;border:1px solid var(--line);border-radius:4px;padding:4px 8px;font-size:13px}.mini-table-actions{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--line)}.supplier-page{display:grid;grid-gap:16px;gap:16px}.supplier-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-sm)}.supplier-hero h1{margin:4px 0;font-size:24px;line-height:1.25}.supplier-hero p:last-child{margin:0;color:var(--muted);font-size:14px}.supplier-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.supplier-metric{display:grid;grid-gap:4px;gap:4px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.supplier-metric span{color:var(--muted);font-size:13px}.supplier-metric strong{font-size:30px;line-height:1}.supplier-form{max-width:560px}.supplier-qr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}.supplier-qr-card{display:grid;grid-gap:12px;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.supplier-qr-card img{width:100%;aspect-ratio:1;object-fit:contain;border:1px solid var(--line);border-radius:var(--radius-sm);background:white}.supplier-qr-card div{display:flex;align-items:center;justify-content:space-between;gap:8px}.supplier-claimed-qr{display:grid;justify-items:center;grid-gap:10px;gap:10px;padding:18px}.supplier-claimed-qr h2{margin:0;font-size:18px}.supplier-claimed-qr img{width:min(320px,100%);aspect-ratio:1;object-fit:contain;border:1px solid var(--line);border-radius:var(--radius);background:white}.supplier-notification-list{display:grid}.supplier-notification{display:grid;grid-template-columns:150px 100px minmax(0,1fr) 52px;grid-gap:12px;gap:12px;align-items:center;width:100%;border:0;border-bottom:1px solid var(--line);padding:12px 14px;background:var(--panel);text-align:left;color:var(--text);cursor:pointer}.supplier-notification:last-child{border-bottom:none}.supplier-notification[data-read=false]{background:#f8fbff}.supplier-notification em,.supplier-notification span{color:var(--muted);font-size:12px;font-style:normal}.supplier-notification p{margin:0;color:var(--text-secondary);overflow-wrap:anywhere}.supplier-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px}@media (max-width:800px){.admin-shell{grid-template-columns:1fr}.sidebar{display:none}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-controls,.table-toolbar{align-items:stretch;flex-direction:column}.filter-controls .button,.toolbar-input,.toolbar-select{width:100%}.detail-layout,.mini-detail-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attachment-row{grid-template-columns:1fr}.action-panel{position:static}.supplier-hero{align-items:stretch;flex-direction:column}.supplier-hero .button{width:100%}.supplier-metrics,.supplier-notification{grid-template-columns:1fr}.supplier-notification{gap:4px}}@media (max-width:420px){.detail-grid{grid-template-columns:1fr}.mini-stats-card{grid-template-columns:repeat(3,1fr)}}