:root{--bg:#F5F7FB;--surface:#ffffff;--ink:#0F172A;--muted:#667085;--line:#E5E7EB;--accent:#2563EB;--accent-2:#10B981;--danger:#EF4444;--warning:#F59E0B;--radius:16px;--radius-sm:12px;--shadow:0 30px 70px rgba(15,23,42,.12)}
*{box-sizing:border-box}
html{height:100%}
body{height:100%;margin:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink)}
.m01-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(17,24,39,.55);z-index:2147483647;opacity:0;transition:opacity .18s ease-out;pointer-events:auto}
.m01-modal{width:min(1100px,100%);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line)
  transform:translateY(10px) scale(.98);opacity:0;transition:transform .18s ease-out, opacity .18s ease-out;transform:translateY(10px) scale(.98)}
.m01-header{border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(180deg,#fff,#fafcff)}
.m01-header h1{margin:0;font-size:18px}
.m01-header .m01-sub{color:var(--muted);font-size:13px}
.m01-close{background:#F3F4F6;border:1px solid var(--line);width:36px;height:36px;border-radius:10px;display:grid;place-items:center;cursor:pointer}
.m01-close:hover{background:#EBEEF2}
.m01-callout{margin:12px 16px 0;padding:10px 12px;display:flex;gap:10px;align-items:flex-start;border:1px dashed #B7F7D1;background:#F1FDF6;border-radius:12px;color:#065F46;font-weight:600}
.m01-callout .dot{width:20px;height:20px;border-radius:7px;background:#D1FAE5;display:grid;place-items:center;color:#065F46;font-weight:900}
.m01-content{display:grid;grid-template-columns:280px 1fr 280px;min-height:0}

.m01-smeta-add-btn.to.rounded3.btn.btn-xs.font_upper_xs.btn-transparent.has-ripple{border-color:#eee;}

@media(max-width:1024px){
.m01-content{grid-template-columns:260px 1fr}
}
@media(max-width:820px){
.m01-content{grid-template-columns:1fr}
}
.m01-aside{border-right:1px solid var(--line);padding:14px 16px;background:#fff}
.m01-aside .block{display:grid;gap:10px;margin-bottom:14px}
.m01-search{position:relative}
.m01-search input{width:100%;height:44px;border:1px solid var(--line);border-radius:12px;padding:10px 12px 10px 38px;outline:none}
.m01-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);opacity:.7}
select{height:44px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:0 12px}
.toggle{height:36px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:0 10px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-weight:700;font-size:13px}
.m01-chips{display:flex;flex-wrap:wrap;gap:8px}
.m01-chip{height:36px;padding:0 12px;border:1px solid var(--line);background:#fff;border-radius:999px;font-weight:700;font-size:13px;cursor:pointer}
.m01-chip[data-active="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.m01-main{display:flex;flex-direction:column;min-height:0}
.m01-meta2{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid var(--line);padding:10px 16px;color:var(--muted);display:flex;align-items:center;justify-content:space-between}
.kbd{font-family:ui-monospace, SFMono-Regular, Menlo, monospace;border:1px solid var(--line);padding:1px 6px;border-radius:6px;background:#fff}
.m01-list2{list-style:none;margin:0;padding:0;overflow:auto}
.m01-item{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line)}
.m01-item:hover{background:#FAFBFC}
.m01-title2{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px}
.m01-sub{color:var(--muted);font-size:13px}
.m01-right{display:flex;gap:8px;align-items:center}
.m01-badge2{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;font-weight:800;font-size:12px;border-radius:999px;border:1px solid transparent}
.m01-badge2.green{background:#E8FAF1;color:#0B7A4B;border-color:#BFF0D4}
.m01-badge2.orange{background:#FFF3E6;color:#9A4B00;border-color:#FFD6A8}
.m01-badge2.count{background:#EFF1F5;color:#475569;border-color:#E2E8F0}
.m01-icon-btn{width:34px;height:34px;display:grid;place-items:center;border:1px solid #F2D7D7;background:#FFF5F5;color:#B42318;border-radius:10px;cursor:pointer}
.m01-icon-btn:hover{background:#FFECEC}
.m01-panel{border-left:1px solid var(--line);padding:14px 16px;background:#fff;display:flex;flex-direction:column;gap:12px}
.m01-panel .card{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff}
.m01-panel .empty{color:var(--muted);font-size:14px}
.m01-panel .actions{display:grid;gap:8px}
.m01-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 14px;font-weight:800;cursor:pointer}
.m01-button.primary{background:var(--accent-2);color:#fff}
.m01-button.primary:disabled{opacity:.55}
.m01-button.brand{background:var(--accent);color:#fff}
.m01-button.ghost{background:#F3F4F6;border:1px solid var(--line)}
.m01-pager2{display:flex;justify-content:center;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid var(--line);background:#fff}
.m01-pager2 .nav{background:#F1F5FF;border:1px solid #E2E8FF;border-radius:10px;padding:6px 10px;cursor:pointer}
.m01-pager2 .nav:hover{background:#E6EBFF}
.m01-pager2 .indicator{min-width:110px;text-align:center;font-weight:800;color:#1f2937;border:1px solid var(--line);border-radius:10px;padding:6px 10px;background:#fff}
.m01-modal input[type=radio]{accent-color:#22c55e}
.m01-modal input[type=checkbox]{accent-color:#22c55e}
html.m01-lock-fixed{overflow:hidden;position:fixed;width:100%}
body.m01-lock-fixed{overflow:hidden;position:fixed;width:100%}
.m01-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,1,1);white-space:nowrap;border:0}
.m01-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;font-weight:800;font-size:12px;border-radius:999px;border:1px solid transparent}
.m01-badge-new{background:#E8FAF1;color:#0B7A4B;border-color:#BFF0D4}
.m01-badge-exists{background:#FFF3E6;color:#9A4B00;border-color:#FFD6A8}
.m01-head-link{font-size:13px;color:#2563eb;text-decoration:none;border:1px solid #e5e7eb;border-radius:8px;padding:6px 10px;background:#fff}
.m01-head-link:hover{background:#f3f4f6}
.m01-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(17,24,39,.55);z-index:2147483647;opacity:0;transition:opacity .18s ease-out;pointer-events:auto}
.m01-modal{transform:translateY(10px) scale(.98);opacity:0;transition:transform .18s ease-out, opacity .18s ease-out;z-index:2147483646;width:1060px;max-width:1060px}
.m01-overlay.m01-open{opacity:1}
.m01-overlay.m01-open .m01-modal{opacity:1;transform:none}
.m01-modal-title{font-size:20px;font-weight:800;margin:0;line-height:1.25}
.m01-modal ul > li::before{content:none !important;margin:0 !important}
.m01-chip .m01-chip-count{margin-left:6px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;border:1px solid var(--line);background:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;color:#111827}
.m01-chip[data-active="true"] .m01-chip-count{border-color:#1f2937;background:#fff;color:#111827}
.m01-close{display:none}
*{box-sizing:border-box}
@media(max-width:1120px){
.m01-modal{width:100%;max-width:100%;transform:translateY(10px) scale(.98);opacity:0;transition:transform .18s ease-out, opacity .18s ease-out}
}
.m01-content{grid-template-columns:280px 1fr 300px}
@media(max-width:820px){
.m01-content{grid-template-columns:1fr}
}
.m01-item{padding:10px 14px;gap:12px;cursor:pointer}
.m01-title2{font-weight:700;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.m01-right .m01-icon-btn{transform:scale(.92)}
.m01-item input[type=radio]{cursor:pointer}
.m01-panel{min-width:0}
.m01-chip .m01-chip-count{display:inline-flex !important}
.m01-pager2{position:sticky;bottom:0}
.m01-modal ul > li::before{content:none !important;margin:0 !important}
.m01-item:hover{background:#f7f9fc}
.ui-notification-balloon{z-index:2147483647 !important}
.ui-notification-balloon-container{z-index:2147483647 !important}
.ui-notification-center{z-index:2147483647 !important}
.ui-notification__content{z-index:2147483647 !important}
.m01-modal{width:1060px;max-width:1060px;height:80vh;max-height:80vh;display:flex;flex-direction:column;opacity:0;transform:translateY(10px) scale(.98);transition:transform .18s ease-out, opacity .18s ease-out}
@media(max-width:1120px){
.m01-modal{width:100%;max-width:100%;height:90vh;max-height:90vh;opacity:0;transform:translateY(10px) scale(.98);transition:transform .18s ease-out, opacity .18s ease-out}
}
.m01-content{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:280px 1fr 300px;gap:18px}
@media(max-width:820px){
.m01-content{grid-template-columns:1fr}
}
.m01-aside{min-height:0}
.m01-main{min-height:0;display:flex;flex-direction:column}
.m01-panel{min-height:0}
.m01-list2{flex:1 1 auto;min-height:0;overflow:auto}
.m01-item{padding:10px 14px;gap:12px;cursor:pointer}
.m01-title2{font-weight:700;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.m01-search{position:relative;display:flex;align-items:center}
.m01-search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);pointer-events:none}
.m01-search input{padding-left:34px;padding-right:34px}
.m01-search .m01-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:999px;display:none;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;font-weight:800}
.m01-search .m01-clear[aria-hidden="false"]{display:flex}
.m01-chip .m01-chip-count{display:inline-flex !important;margin-left:6px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;border:1px solid var(--line);background:#fff;align-items:center;justify-content:center;font-weight:800;font-size:12px;color:#111827}
.m01-panel .card .empty{color:#6b7280}
.m01-item input[type=radio]{cursor:pointer}
.m01-item:hover{background:#f7f9fc}
.m01-label{font-size:12px;font-weight:800;color:#6b7280;margin:6px 0 8px}
.to.rounded3.btn.btn-xs.font_upper_xs.btn-transparent.has-ripple.m01-smeta-btn{display:inline-flex;align-items:center;gap:6px}
.to.rounded3.btn.btn-xs.font_upper_xs.btn-transparent.has-ripple.m01-smeta-btn .m01-smeta-ic{width:14px;height:14px;flex:0 0 14px;margin-right:2px;display:inline-block}
.m01-modal.m01-modal--compact{width:min(520px,96vw);max-height:84vh}
.m01-topbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:8px 12px;background:#fff;border-bottom:1px solid var(--line)}
.m01-topbar .m01-search{flex:1 1 280px;min-width:220px}
.m01-topbar .m01-chips{display:flex;flex-wrap:wrap;gap:6px}
.m01-topbar .m01-sort{min-width:200px;margin-left:auto}
@media(max-width:680px){
.m01-topbar{flex-direction:column;align-items:stretch;gap:8px}
.m01-topbar .m01-sort{margin-left:0;width:100%}
}
.m01-panel{display:none !important}
.m01-head-link{display:none !important}
.m01-content{grid-template-columns:1fr !important;overflow:auto;max-height:calc(88vh - 140px);padding-bottom:8px}
.m01-footer{padding:10px 12px;border-top:1px solid var(--line);background:#fff;display:flex;justify-content:flex-end}
.m01-item--new{background:#F6FAFF;border:1px dashed #B6D4FE;border-radius:12px}
.m01-item--new .m01-title2{font-weight:800}
.m01-item--new .m01-sub{color:#3a5c82;opacity:.9}
.m01-topbar-row1{display:block;margin-bottom:8px}
.m01-topbar-row2{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.m01-topbar-row2 .block{margin:0}
.m01-chip .m01-chip-count{margin-left:6px;min-width:22px;display:inline-flex !important;justify-content:center;align-items:center;font-size:12px;padding:0 6px;border-radius:999px;border:1px solid var(--line)}
.m01-qtybox{display:inline-flex;align-items:center;gap:6px;margin-right:auto;margin-left:auto}
.m01-qty{display:inline-flex;align-items:center;gap:8px}
.m01-qty-input{width:64px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;height:38px}
.m01-qty-dec{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;height:38px}
.m01-qty-inc{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;height:38px}
.m01-modal.m01-auth-min{max-width:420px !important}
.m01-topbar{padding:8px 18px 12px;display:grid;grid-template-columns:1fr auto;gap:12px}
.m01-label{font-size:12px;color:var(--muted);margin-bottom:6px}
.m01-search .m01-input{border-radius:12px;height:42px;font-size:14px}
.m01-search input[type="text"]{border:1px solid var(--line);border-radius:12px;height:42px;padding:0 14px}
.m01-search input[type="search"]{border:1px solid var(--line);border-radius:12px;height:42px;padding:0 14px}
.m01-chip{border-radius:999px;padding:8px 10px;font-size:14px}
.m01-header{border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fafcff);display:flex;align-items:center;justify-content:space-between;gap:16px}
.m01-header .m01-modal-title{font-size:20px;font-weight:800;margin:0}
.m01-header .m01-sub{font-size:13px;color:#667085;margin:0}
.m01-close{width:36px;height:36px;border-radius:12px;border:1px solid var(--line);display:grid;place-items:center;background:#f3f5f7;cursor:pointer}
.m01-product-host{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:#f3f5f7;border-radius:14px;padding:12px;margin:0 18px}
.m01-product-host .m01-pname{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m01-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(17,24,39,.48);z-index:2147483647}
.m01-overlay.m01-open{display:flex}
.m01-modal{max-height:88vh;max-width:960px;width:92vw;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);background:var(--surface)}
.m01-item[data-has-product="Y"]{opacity:.65}
.m01-pager{padding-top:8px;padding-bottom:12px}
.m01-modal .m01-modal{background:#fff;border-radius:16px;border:1px solid #e7e8ec;box-shadow:0 24px 64px rgba(16,24,40,.18),0 2px 8px rgba(16,24,40,.08);max-width:960px;width:92vw;max-height:88vh;display:flex;flex-direction:column;overflow:hidden}
html.m01-fixed{overflow:hidden !important}
body.m01-fixed{overflow:hidden !important}
.m01-modal .m01-header{border-bottom:1px solid #eef0f3;background:linear-gradient(180deg,#fff,#fafcff)}
.m01-modal .m01-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.m01-modal .m01-head-left{display:grid;gap:4px}
.m01-modal .m01-modal-title{margin:0;font-weight:800;font-size:22px;line-height:1.25;color:#0f1222}
.m01-modal .m01-sub{color:#667085;font-size:13px}
.m01-modal .m01-close{width:36px;height:36px;border-radius:12px;border:1px solid #e6e7ea;background:#f3f4f6;display:grid;place-items:center;cursor:pointer}
.m01-modal .m01-close:hover{background:#eef1f5}
.m01-modal .m01-content{overflow:auto;max-height:calc(88vh - 50px);padding: 10px;}
.m01-modal .m01-topbar{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;margin-bottom:8px}
.m01-modal .m01-topbar-row1{display:block}
.m01-modal .m01-topbar-row2{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.m01-modal .m01-search input{width:100%;height:40px;border:1px solid #e6e7ea;border-radius:12px;padding:0 12px;outline:none}
.m01-modal .m01-search input:focus{border-color:#c7d2fe;box-shadow:0 0 0 6px rgba(46,108,255,.12)}
.m01-modal .m01-chips{display:inline-flex;border:1px solid #e6e7ea;border-radius:12px;overflow:hidden;background:#fff}
.m01-modal .m01-chip{border:0;border-right:1px solid #e6e7ea;padding:8px 12px;font-weight:700;background:#fff;cursor:pointer}
.m01-modal .m01-chip:last-child{border-right:0}
.m01-modal .m01-chip[data-active="true"]{background:#121826;color:#fff}
.m01-chip[data-active="Y"]{background:#121826;color:#fff}
.m01-modal .m01-sort label{font-weight:700;color:#667085;margin-right:6px}
.m01-modal .m01-select{height:36px;border:1px solid #e6e7ea;border-radius:12px;background:#fff;padding:0 12px}
.m01-modal .m01-product-host{display:flex;align-items:center;gap:12px;border:1px solid #e6e7ea;background:#f5f7fa;border-radius:14px;padding:12px;margin:8px 0 10px}
.m01-modal .m01-pname{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m01-modal .m01-qty{margin-left:auto;display:inline-flex;align-items:center;border:1px solid #e6e7ea;border-radius:12px;overflow:hidden}
.m01-modal .m01-qty button{width:36px;height:36px;border:0;background:#fff}
.m01-modal .m01-qty input{width:48px;height:36px;border:0;text-align:center}
.m01-modal .m01-topnotice{display:flex;gap:10px;align-items:flex-start;border:1px solid #b7f0d7;background:#e9fbf3;border-radius:12px;padding:10px 12px;color:#0f7b57;margin:10px 0}
.m01-modal .m01-topnotice .ico{width:18px;height:18px;border-radius:50%;background:linear-gradient(180deg,#bdf4dd,#7fe8be)}
.m01-modal .m01-meta2{color:#667085;margin:6px 0 8px}
.m01-modal .m01-list{margin:0;padding:0;list-style:none}
.m01-modal .m01-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:5px 5px;border-top:1px solid #eef0f3}
.m01-modal .m01-item:hover{background:#fafbfc}
.m01-modal .m01-title2{font-weight:800}
.m01-modal .m01-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;border:1px solid #e6e7ea;background:#fff;font-size:12px;font-weight:700}
.m01-modal .m01-badge-new{background:#e8faf1;color:#067647;border-color:#b6e6c8}
.m01-modal .m01-badge-exists{background:#fff3e0;color:#b76100;border-color:#ffd5a3}
.m01-modal .m01-item[data-has-product="Y"]{opacity:.65}
.m01-modal .m01-icon-btn{width:34px;height:34px;display:grid;place-items:center;border:1px solid #e6e7ea;background:#fff;border-radius:10px;cursor:pointer}
.m01-modal .m01-item-new{background:#f7fbff;border:1px dashed #cfe0ff;margin:0 10px;border-radius:12px;padding:12px 14px}
.m01-modal .m01-pager{display:flex;gap:10px;justify-content:center;align-items:center;padding:0 0}
.m01-modal .m01-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:#f1f2f5;border:1px solid #e6e7ea}
.m01-modal .m01-pager .m01-btn{min-width:36px}
.m01-modal .m01-modal-footer{padding:5px 18px;border-top:1px solid #eef0f3;display:flex;justify-content:flex-end;gap:10px;background:#fff}
.m01-modal .m01-btn{height:38px;border-radius:12px;padding:0 16px;border:1px solid #e6e7ea;background:#fff;font-weight:700;cursor:pointer}
.m01-modal .m01-btn-primary{background:#35c48d;border-color:#35c48d;color:#fff}
.m01-modal .m01-btn[disabled]{opacity:.5;cursor:not-allowed}
.m01-search{position:relative}
.m01-search .m01-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:1px solid var(--m01-border, #e6e7ea);background:#fff;width:26px;height:26px;border-radius:8px;font-size:16px;line-height:24px;cursor:pointer}
.m01-search .m01-clear:hover{box-shadow:0 0 0 6px rgba(46,108,255,.12)}
:root{--bg:#ffffff;--surface:#ffffff;--muted:#8b93a1;--text:#0f1222;--sub:#667085;--border:#e6e7ea;--ring:rgba(46,108,255,.2);--primary:#121826;--accent:#2e6cff;--danger:#b42318;--shadow:0 18px 40px rgba(16,24,40,.12), 0 2px 6px rgba(16,24,40,.06);--success:#0f7b57;--success-2:#0ea06e;--success-bg:#e9fbf3;--success-br:#b7f0d7}
*{box-sizing:border-box}
body{margin:0;font:14px/1.45 Inter,system-ui,Segoe UI,Roboto,Arial;color:var(--text);background:var(--bg)}
.panel{max-width:1100px;margin:20px auto 10px;padding:0 16px;display:flex;gap:12px;align-items:center}
.panel label{font-weight:700;color:#475467}
.panel .m01-modal .select{height:36px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:#fff}
.panel .range{width:220px}
.stage{max-width:1100px;margin:0 auto 40px;padding:0 16px;transition:max-width .25s ease}
.m01-modal .head{top:0;z-index:10;background:var(--surface)}
.m01-modal .m01-modal .head-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px}
.m01-modal .title{font-size:20px;font-weight:800}
.m01-modal .close{margin-left:auto;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--border);border-radius:12px;background:#fff;cursor:pointer}
.m01-modal .close svg{stroke:#3d4657}
.m01-modal .close:hover{box-shadow:0 0 0 6px rgba(0,0,0,.04)}
.m01-modal .toolbar-top{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:0 0 10px}
.m01-modal .search input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:12px;outline:none}
.m01-modal .search input:focus{border-color:#cbd5ff;box-shadow:0 0 0 6px var(--ring)}
.m01-modal .sort{display:flex;align-items:center;gap:8px}
.m01-modal .sort label{color:#667085;font-weight:700}
.m01-modal .select{height:36px;padding:0 12px;border:1px solid var(--border);border-radius:12px;background:#fff}
.m01-modal .filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:0 18px 16px}
.m01-modal .seg{display:inline-flex;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff;padding:5px;}
.m01-modal .seg button{padding:0px 12px;background:#fff;border:0;border-right:1px solid var(--border);font-weight:700;cursor:pointer}
.m01-modal .seg button:last-child{border-right:0}
.m01-modal .seg button[aria-pressed="true"]{background:var(--primary);color:#fff}
.m01-modal .product{display:flex;align-items:center;gap:12px;border:1px solid var(--border);background:#f3f5f7;border-radius:14px;padding:12px;margin:0 0px}
.m01-modal .p-name{color: #000;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m01-modal .qty{margin-left:auto;display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.m01-modal .qty button{width:34px;height:34px;border:0;background:#fff;cursor:pointer}
.m01-modal .qty input{width:44px;text-align:center;border:0;outline:0}
.m01-modal .notice{margin:12px 18px;border-radius:14px;padding:12px 14px;border:1px solid var(--success-br);background:linear-gradient(180deg, var(--success-bg), #f3fdf7);color:var(--success);display:flex;gap:10px;align-items:flex-start}
.m01-modal .notice .ico{display: none; width:18px;height:18px;display:grid;place-items:center;background:conic-gradient(from 90deg, #bdf4dd, #7fe8be);border-radius:50%}
.m01-modal .notice b{color:var(--success-2)}
.m01-modal .notice a{color:var(--success-2);font-weight:700;text-decoration:underline dashed 1px;text-underline-offset:2px}
.m01-modal .count{padding:8px 18px;color:var(--sub)}
.m01-modal .list{padding:4px 0}
.m01-modal .row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px 18px;border-top:1px solid var(--border)}
.m01-modal .row:hover{background:#fafbfc}
.m01-modal .radio{accent-color:var(--accent)}
.m01-modal .m01-modal .title-row{font-weight:800}
.m01-modal .meta-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.m01-modal .badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;border:1px solid var(--border);background:#fff;font-weight:700;font-size:12px;line-height:1}
.m01-modal .m01-modal .badge--green{background:#e8faf1;color:#067647;border-color:#b6e6c8}
.m01-modal .m01-modal .badge--amber{background:#fff3e0;color:#b76100;border-color:#ffd5a3}
.m01-modal .icon-btn{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--border);background:#fff;border-radius:10px;cursor:pointer}
.m01-modal .icon-btn svg{stroke:#6b7280}
.m01-modal .create{background:#f7fbff;border:1px dashed #cfe0ff;margin:10px 18px;border-radius:12px;padding:12px 14px;display:flex;gap:12px;align-items:flex-start}
.m01-modal .pager{display:flex;gap:10px;justify-content:center;align-items:center;padding:16px}
.m01-modal .btn{border:1px solid var(--border);background:#fff;border-radius:12px;height:36px;padding:0 12px;cursor:pointer;font-weight:700}
.m01-modal .pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#f1f2f5;border:1px solid var(--border)}
.m01-modal .foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--border);background:#fff;bottom:0;z-index:5}
.m01-modal .ok{background:#35c48d;border-color:#35c48d;color:#fff}
.m01-modal .dense .m01-modal .m01-modal .head-row{padding:10px 14px}
.m01-modal .dense .m01-modal .toolbar-top{padding:0 14px 8px}
.m01-modal .dense .m01-modal .filters{padding:0 14px 12px}
.m01-modal .dense .m01-modal .product{margin:0 14px;padding:10px}
.m01-modal .dense .m01-modal .notice{margin:10px 14px}
.m01-modal .dense .m01-modal .row{padding:12px 14px}
.m01-modal .airy .m01-modal .m01-modal .head-row{padding:18px 22px}
.m01-modal .airy .m01-modal .toolbar-top{padding:0 22px 12px}
.m01-modal .airy .m01-modal .filters{padding:0 22px 18px}
.m01-modal .airy .m01-modal .product{margin:0 22px;padding:14px}
.m01-modal .airy .m01-modal .notice{margin:14px 22px}
.m01-modal .airy .m01-modal .row{padding:16px 22px}
@media (max-width:860px){
.m01-modal .toolbar-top{grid-template-columns:1fr}
}
.m01-modal .head{display:block !important;top:0;z-index:10;background:#fff}
.m01-modal .head > *{display:block;width:100%}
.m01-modal .head-row{display:flex !important;align-items:center;justify-content:space-between;gap:16px;padding:0px 0px;margin-bottom:10px}
.m01-modal .toolbar-top{display:grid !important;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:0 0px 10px}
.m01-modal .filters{display:flex !important;gap:8px;flex-wrap:wrap;align-items:center;padding:0 0px 16px}
.m01-modal .product{display:flex !important;align-items:center;gap:12px;border:1px solid #e6e7ea;background:#f3f5f7;border-radius:14px;padding:12px}
.m01-modal .notice{display:flex !important;gap:10px;align-items:flex-start;margin:12px 0px;border-radius:14px;padding:5px 14px;border:1px solid #b7f0d7;background:linear-gradient(180deg,#e9fbf3,#f3fdf7);color:#0f7b57}
.m01-modal .count{display:block !important;padding:8px 0px;color:#667085}
.m01-modal .head .seg button{float:none !important}
.m01-modal .head *{flex:unset !important}

/* === m01 adaptive tiny modal pack === */
@media (max-width: 420px){
  .m01-modal{border-radius:12px}
  .m01-header{padding:10px}
  .m01-body{padding:0}
  .m01-item label{padding:10px}
  .m01-search-input{padding:8px 10px;font-size:14px}
  .m01-btn,.m01-select{padding:8px 10px;font-size:12px}
  .m01-pill,.m01-badge{font-size:11px}
  .m01-item .m01-name{font-size:14px}
  .m01-item .m01-qty input[type="number"], .m01-item .qty input[type="number"], .m01-item .counter input[type="number"]{width:44px;min-width:44px}
	.m01-modal .notice .ico {display:none;}
}


.m01-toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:#111827;color:#fff;padding:10px 14px;border-radius:10px;opacity:0;transition:.2s;z-index:10001}
.m01-toast.show{opacity:1}


/* ===== M01 ultra-responsive modal tweaks ===== */
.m01-modal {
  --m01-gap: clamp(8px, 2vw, 16px);
  --m01-font: clamp(13px, 1.6vw, 16px);
  --m01-font-sm: clamp(12px, 1.4vw, 14px);
  --m01-radius: 12px;
  --m01-pad: clamp(10px, 2.2vw, 18px);
  font-size: var(--m01-font);
}

.m01-modal .m01-header {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  gap: var(--m01-gap);
  align-items: center;
}

.m01-modal .m01-search {
  grid-column: 1 / -1;
}

.m01-modal .m01-search input[type="text"],
.m01-modal .m01-search input[type="search"] {
  width: 100%;
  min-height: 40px;
  padding: 10px 12px;
  border-radius: var(--m01-radius);
  outline: none;
}

.m01-modal .m01-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.m01-modal .m01-filter-chips .chip {
  padding: 6px 10px;
  border-radius: 999px;
  font-size: var(--m01-font-sm);
  line-height: 1;
  white-space: nowrap;
}

.m01-modal .m01-sort {
  justify-self: end;
}

.m01-modal .m01-info {
  grid-column: 1 / -1;
  font-size: var(--m01-font-sm);
  opacity: .85;
}

.m01-modal .m01-body {
  margin-top: var(--m01-gap);
}

/* smeta list */
.m01-modal .m01-smeta-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--m01-gap);
}

.m01-modal .m01-smeta-item {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  padding: var(--m01-pad);
  border-radius: var(--m01-radius);
}

.m01-modal .m01-smeta-item [data-has-product="Y"],
.m01-modal .m01-smeta-item[data-has-product="Y"] {
  opacity: .55;
  pointer-events: none;
}

/* Footer buttons wrap nicely */
.m01-modal .m01-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.m01-modal .m01-footer .btn {
  min-height: 40px;
  padding: 10px 16px;
  border-radius: var(--m01-radius);
}

/* Breakpoints */
@media (max-width: 860px) {
  .m01-modal .m01-header {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
  }
  .m01-modal .m01-sort {
    justify-self: start;
  }
  .m01-modal .m01-smeta-item {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 480px) {
  .m01-modal {
    --m01-pad: 10px;
    --m01-radius: 10px;
  }
  .m01-modal .m01-footer {
    justify-content: stretch;
  }
  .m01-modal .m01-footer .btn {
    flex: 1 1 auto;
    text-align: center;
  }
  .m01-modal .m01-filter-chips .chip {
    padding: 6px 8px;
  }
}


/* ===== M01 responsive overrides v2 (compact sizes, less footer space) ===== */
.m01-modal{ max-height:86vh; }
@media (max-width:600px){ .m01-modal{ max-height:88vh; } }

/* Footer tighter */
.m01-modal-footer{ padding:4px 12px !important; }

/* Base font a bit smaller in modal content */
.m01-modal{ font-size:14px; }
@media (max-width:1200px){ .m01-modal{ font-size:13.5px; } }
@media (max-width:900px){ .m01-modal{ font-size:13px; } }
@media (max-width:700px){ .m01-modal{ font-size:12.5px; } }
@media (max-width:480px){ .m01-modal{ font-size:12px; } }

/* Controls scale down with width */
.m01-search input,
.m01-header select,
select { height:42px; }
.m01-chip{ height:34px; padding:0 10px; font-size:12.5px; }
.m01-btn{ min-height:38px; padding:9px 14px; }
.m01-pill{ font-size:12.5px; }

@media (max-width:1200px){
  .m01-search input,
  .m01-header select,
  select { height:40px; }
  .m01-chip{ height:32px; padding:0 10px; font-size:12px; }
  .m01-btn{ min-height:36px; padding:8px 12px; }
}
@media (max-width:900px){
  .m01-search input,
  .m01-header select,
  select { height:38px; }
  .m01-chip{ height:30px; padding:0 10px; font-size:11.5px; }
  .m01-btn{ min-height:34px; padding:8px 12px; }
}
@media (max-width:700px){
  .m01-search input,
  .m01-header select,
  select { height:36px; }
  .m01-chip{ height:28px; padding:0 8px; font-size:11.5px; }
  .m01-btn{ min-height:32px; padding:7px 12px; }
}
@media (max-width:480px){
  .m01-search input,
  .m01-header select,
  select { height:34px; }
  .m01-chip{ height:26px; padding:0 8px; font-size:11px; }
  .m01-btn{ min-height:30px; padding:7px 10px; }
}
/* Reduce vertical gaps to avoid empty space on small modals */
.m01-header, .m01-aside .block, .m01-list li, .m01-pager { gap:10px; }
@media (max-width:700px){ .m01-header, .m01-aside .block, .m01-list li, .m01-pager { gap:8px; } }


/* ===== M01 v3: stronger fit & compact footer ===== */

/* Ensure children can shrink and never overflow the modal */
.m01-modal { box-sizing: border-box; max-height: 86vh; }
.m01-modal * { box-sizing: inherit; min-width: 0; max-width: 100%; }

/* Titles and subtitles wrap safely */
.m01-title2, .m01-title, .m01-sub, .m01-hint, .m01-info { 
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
  white-space: normal;
}
.m01-title2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }

/* List items grid never overflows */
.m01-smeta-item, .m01-item, .m01-card { 
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
}
.m01-main { min-width: 0; } /* allow text to shrink */
.m01-right { display: flex; gap: 8px; }

/* Badges/chips wrap */
.m01-badges, .m01-sub { display: flex; flex-wrap: wrap; gap: 6px; }
.m01-badge, .chip, .m01-pill { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Footer: smaller padding and no huge blank area */
.m01-footer, .m01-modal-footer { padding: 6px 10px !important; margin-top: 8px; }
.m01-btn-ok, .m01-footer .btn { min-height: 34px; padding: 8px 12px; }
@media (max-width: 480px){
  .m01-btn-ok, .m01-footer .btn { width: 100%; }
}

/* Inputs/selects scale */
.m01-search input[type="text"], .m01-search input[type="search"], .m01-header select {
  height: 36px; padding: 8px 10px;
}

/* Hint box wraps and never overflows */
.m01-topnotice .txt { word-break: break-word; }

