.ct-page{display:flex;flex-direction:column;gap:16px}.ct-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--divider)}.ct-del{border:0;background:none;color:var(--sub);font-size:14px;cursor:pointer;padding:8px 0}.ct-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.ct-line{display:grid;grid-template-columns:auto 64px 1fr auto;gap:12px;align-items:start;padding:16px 0;border-bottom:1px solid var(--divider)}.ct-line:last-child{border-bottom:0}.ct-line input[type=checkbox]{margin-top:4px;width:20px;height:20px}.ct-thumb{width:64px;height:64px;border-radius:var(--r-btn);background:var(--surface);object-fit:cover}.ct-t{display:flex;flex-direction:column;gap:4px;min-width:0}.ct-t b{font-size:15px;color:var(--title)}.ct-t span{font-size:13px;color:var(--sub)}.ct-t .ct-warn{color:var(--danger,#d93025);font-weight:700}.ct-t a{font-size:13px;color:var(--brand-text)}.ct-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}.ct-row .qty button{width:36px;height:36px;font-size:18px;background:var(--surface)}.ct-row .qty output{min-width:32px;font-size:15px}.ct-amt{font-size:15px;font-weight:700;color:var(--title);white-space:nowrap}.ct-x{border:0;background:none;color:var(--sub);font-size:20px;line-height:1;cursor:pointer;padding:0 4px}.ct-line.is-off .ct-thumb,.ct-line.is-off .ct-t b{opacity:.5}.ct-ship-opts{display:flex;flex-direction:column;gap:8px}.buybar .ct-add{flex:none}.sh-cart-n{display:inline-flex;min-width:18px;height:18px;margin-left:4px;padding:0 5px;border-radius:9px;background:var(--brand);color:#fff;font-size:11px;font-weight:700;align-items:center;justify-content:center}.ct-toast{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);z-index:30;display:flex;gap:12px;align-items:center;padding:12px 16px;border-radius:var(--r-btn);background:var(--title);color:#fff;font-size:14px;box-shadow:0 4px 16px rgba(0,0,0,.2)}.ct-toast a{color:#fff;font-weight:700;text-decoration:underline}