.op-panel{display:none;flex-direction:column;width:280px;flex-shrink:0;border-right:1px solid #e8e8e8;background:#fafafa;overflow:hidden}@media (min-width:1024px){.op-panel{display:flex;position:fixed;left:0;top:90px;height:calc(100vh - 90px)}}.op-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 14px;border-bottom:1px solid #e8e8e8;background:#fff;flex-shrink:0}.op-header-title{gap:8px;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:#111}.op-count,.op-header-title{display:flex;align-items:center;font-family:var(--font-now);font-weight:700}.op-count{background:#111;color:#fff;font-size:11px;width:20px;height:20px;border-radius:50%;justify-content:center}.op-body{flex:1 1;overflow-y:auto;overflow-x:hidden}.op-body::-webkit-scrollbar{width:4px}.op-body::-webkit-scrollbar-track{background:transparent}.op-body::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:2px}.op-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;text-align:center}.op-empty-icon{opacity:.18;margin-bottom:12px}.op-empty-text{font-family:var(--font-now);font-size:13px;color:#999}.op-items{list-style:none;margin:0;padding:8px 0}.op-item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-bottom:1px solid #f0f0f0;transition:background .1s}.op-item:hover{background:#f5f5f5}.op-item:last-child{border-bottom:none}.op-item--free{background:#f0fdf4}.op-item--free:hover{background:#e6faf0}.op-item-img-wrap{position:relative;flex-shrink:0;width:44px;height:44px;border:0;background:transparent;overflow:visible}.op-item-img{width:100%;height:100%;object-fit:contain;padding:3px;border-radius:4px}.op-free-dot{position:absolute;top:-5px;right:-5px;background:#10b981;color:#fff;font-size:7px;font-weight:700;padding:2px 4px;border-radius:3px;letter-spacing:.05em;font-family:var(--font-now)}.op-item-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.op-item-name{font-family:var(--font-now);font-size:12.5px;font-weight:600;color:#111;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.op-item-size{font-weight:400;color:#888;font-size:11px}.op-item-sub{font-family:var(--font-now);font-size:11px;color:#999;margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.op-item-sub--free{color:#10b981}.op-item-price{font-family:var(--font-now);font-size:12px;font-weight:600;color:#111;margin:2px 0 0}.op-free-label{color:#10b981}.op-item-controls{flex-shrink:0;flex-direction:column;justify-content:center}.op-item-controls,.op-qty{display:flex;align-items:center}.op-qty{gap:6px;background:#efefef;border-radius:100px;padding:5px 8px}.op-qty-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#fff;border:none;cursor:pointer;color:#111;transition:background .12s,color .12s;flex-shrink:0}.op-qty-btn:hover{background:#111;color:#fff}.op-qty-num{min-width:14px;text-align:center}.op-qty-locked,.op-qty-num{font-family:var(--font-now);font-size:12px;font-weight:700}.op-qty-locked{color:#10b981;background:#f0fdf4;border:1px solid #10b981;padding:4px 8px;border-radius:4px}.op-footer{border-top:1px solid #e8e8e8;padding:14px 14px 16px;background:#fff;flex-shrink:0;display:flex;flex-direction:column;gap:10px}.op-total-row{display:flex;justify-content:space-between;align-items:center}.op-total-label{font-size:13px;font-weight:600}.op-total-label,.op-total-price{font-family:var(--font-now);color:#111}.op-total-price{font-size:18px;font-weight:700}.op-checkout-btn{width:100%;padding:13px 16px;background:#111;color:#fff;border:none;border-radius:100px;font-family:var(--font-now);font-size:14px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}.op-checkout-btn:hover{background:#000;transform:translateY(-1px)}.op-clear-btn{width:100%;padding:10px 16px;background:transparent;color:#999;border:1px solid #e0e0e0;border-radius:100px;font-family:var(--font-now);font-size:12px;font-weight:500;cursor:pointer;transition:color .12s,border-color .12s}.op-clear-btn:hover{color:#c0392b;border-color:#f0c0c0}@media (max-width:1023px){.op-panel{display:flex;position:fixed;bottom:0;left:0;right:0;top:auto;width:100%;height:72vh;max-height:72vh;border-right:none;border-top:1px solid #e8e8e8;border-radius:18px 18px 0 0;box-shadow:0 -8px 40px rgba(0,0,0,.14);z-index:1100;transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);visibility:hidden}.op-panel.op-panel--open{transform:translateY(0);visibility:visible}}.op-backdrop{display:none}@media (max-width:1023px){.op-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1099;animation:op-fade-in .2s ease}}@keyframes op-fade-in{0%{opacity:0}to{opacity:1}}.op-header-right{display:flex;align-items:center;gap:8px}.op-close-btn{display:none;background:#f0f0f0;border:none;border-radius:50%;width:28px;height:28px;font-size:13px;cursor:pointer;color:#555;align-items:center;justify-content:center;transition:background .12s}.op-close-btn:hover{background:#e0e0e0}@media (max-width:1023px){.op-close-btn{display:flex}}@keyframes opRowIn{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}.op-item{animation:opRowIn .34s cubic-bezier(.2,.7,.3,1) backwards}.op-items--stagger .op-item:first-child{animation-delay:.1s}.op-items--stagger .op-item:nth-child(2){animation-delay:145ms}.op-items--stagger .op-item:nth-child(3){animation-delay:.19s}.op-items--stagger .op-item:nth-child(4){animation-delay:235ms}.op-items--stagger .op-item:nth-child(5){animation-delay:.28s}.op-items--stagger .op-item:nth-child(6){animation-delay:325ms}.op-items--stagger .op-item:nth-child(n+7){animation-delay:.37s}.op-item--leaving{overflow:hidden;animation:opRowOut .44s forwards}@keyframes opRowOut{0%{height:var(--op-row-h);opacity:1;transform:none;padding-top:12px;padding-bottom:12px;border-bottom-width:1px;animation-timing-function:cubic-bezier(.5,0,.9,.3)}48%{height:var(--op-row-h);opacity:0;transform:translateX(-104%) scale(.97);padding-top:12px;padding-bottom:12px;border-bottom-width:1px;animation-timing-function:cubic-bezier(.25,1,.4,1)}to{height:0;opacity:0;transform:translateX(-104%) scale(.97);padding-top:0;padding-bottom:0;border-bottom-width:0}}@media (prefers-reduced-motion:reduce){.op-item,.op-item--leaving{animation:none}}.op-box{position:absolute;left:50%;bottom:150px;transform:translateX(-50%);z-index:3;visibility:hidden;pointer-events:none}.op-expected{margin:1px 0 0;font-family:var(--font-now);font-size:9.5px;line-height:1.2;color:#8a8a85}.home-layout{display:flex;align-items:flex-start;padding-top:90px;min-height:100vh}.home-products{flex:1 1;min-width:0;margin-top:0}@media (min-width:1024px){.home-footer,.home-products{margin-left:280px}}@media (max-width:1023px){.home-layout{display:block}}