.ci__btn{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:90;width:56px;height:56px;border-radius:var(--radius-full);background:var(--color-brand-500);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 2px #fff3,0 2px 8px #1f7a3a40,0 8px 24px #1f7a3a4d;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;animation:ci-entrance .35s cubic-bezier(.16,1,.3,1)}@keyframes ci-entrance{0%{opacity:0;transform:translateY(24px) scale(.6)}to{opacity:1;transform:translateY(0) scale(1)}}.ci__btn:hover{background:var(--color-brand-600);transform:scale(1.08);box-shadow:inset 0 0 0 2px #ffffff4d,0 4px 12px #1f7a3a4d,0 12px 32px #1f7a3a66}.ci__btn:active{transform:scale(.96)}.ci__btn svg{width:24px;height:24px;position:relative;z-index:1}.ci__pulse{position:absolute;inset:0;border-radius:var(--radius-full);border:2px solid var(--color-brand-400);animation:ci-pulse 2.5s ease-out infinite;pointer-events:none}@keyframes ci-pulse{0%{transform:scale(1);opacity:.5}70%{transform:scale(1.45);opacity:0}to{transform:scale(1.45);opacity:0}}.ci__badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-full);background:var(--color-danger-500);color:#fff;font-family:var(--font-sans);font-size:11px;font-weight:var(--font-weight-bold);display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 2px 6px #0003;animation:ci-pop .25s ease}@keyframes ci-pop{0%{transform:scale(0)}60%{transform:scale(1.2)}to{transform:scale(1)}}@media(max-width:767px){.ci__btn{bottom:calc(70px + var(--space-4))}}.cd__overlay{position:fixed;inset:0;z-index:100;background:#00000073;opacity:0;animation:cd-fadein .25s ease forwards}@keyframes cd-fadein{to{opacity:1}}.cd__overlay--closing{animation:cd-fadeout .2s ease forwards}@keyframes cd-fadeout{to{opacity:0}}.cd__panel{position:fixed;top:0;right:0;bottom:0;z-index:101;width:400px;max-width:100vw;background:var(--color-surface);display:flex;flex-direction:column;box-shadow:-8px 0 32px #00000026;transform:translate(100%);animation:cd-slidein .28s cubic-bezier(.16,1,.3,1) forwards}@keyframes cd-slidein{to{transform:translate(0)}}.cd__panel--closing{animation:cd-slideout .2s ease forwards}@keyframes cd-slideout{to{transform:translate(100%)}}.cd__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-5);border-bottom:1px solid var(--color-neutral-100)}.cd__title{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.cd__close{width:36px;height:36px;border:none;background:var(--color-neutral-50);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);transition:background .15s ease,color .15s ease}.cd__close:hover{background:var(--color-neutral-200);color:var(--color-text)}.cd__close svg{width:18px;height:18px}.cd__body{flex:1;overflow-y:auto;padding:0 var(--space-5);scrollbar-width:thin;scrollbar-color:var(--color-brand-100) transparent}.cd__body::-webkit-scrollbar{width:6px}.cd__body::-webkit-scrollbar-track{background:transparent}.cd__body::-webkit-scrollbar-thumb{background:var(--color-brand-100);border-radius:3px}.cd__body::-webkit-scrollbar-thumb:hover{background:var(--color-brand-400)}.cd__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-4);padding:var(--space-9) var(--space-5);text-align:center}.cd__empty-icon{width:64px;height:64px;color:var(--color-neutral-300)}.cd__empty-text{font-family:var(--font-sans);font-size:var(--text-md);color:var(--color-text-muted)}.cd__empty-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background .15s ease,transform .12s ease}.cd__empty-link:hover{background:var(--color-primary-hover)}.cd__empty-link:active{transform:scale(.96)}.cd__footer{border-top:1px solid var(--color-neutral-100);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.cd__total-row{display:flex;justify-content:space-between;align-items:center}.cd__total-label{font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--color-text)}.cd__total-value{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--color-text)}.cd__total-note{font-family:var(--font-sans);font-size:var(--text-xs);color:var(--color-text-muted);font-style:italic;text-align:right;margin:calc(-1 * var(--space-1)) 0 0}.cd__clear{border:1px solid var(--color-neutral-200);background:none;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer;padding:var(--space-2);text-align:center;border-radius:var(--radius-md);transition:background .15s ease,color .15s ease,border-color .15s ease}.cd__clear:hover{background:var(--color-danger-50);color:var(--color-danger-500);border-color:var(--color-danger-200)}.cd__clear:active{transform:scale(.97)}@media(max-width:767px){.cd__panel{width:100vw}}[data-theme=dark] .cd__close{background:var(--color-neutral-700)}[data-theme=dark] .cd__close:hover{background:var(--color-neutral-600)}.ct__row{display:flex;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-neutral-100);animation:ct-fadein .2s ease}@keyframes ct-fadein{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.ct__thumb{width:64px;align-self:stretch;border-radius:var(--radius-md);background:linear-gradient(145deg,var(--color-brand-50),var(--color-neutral-100));display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.ct__thumb-img{width:38px;height:38px;opacity:.55;pointer-events:none}.ct__thumb-product{width:100%;height:100%;object-fit:contain;pointer-events:none}.ct__info{flex:1;min-width:0}.ct__name{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text);line-height:1.3;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct__price{font-family:var(--font-sans);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-2)}.ct__actions{display:flex;align-items:center;gap:var(--space-2)}.ct__remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:none;color:var(--color-danger-500);cursor:pointer;border-radius:var(--radius-sm);transition:background .15s ease}.ct__remove:hover{background:var(--color-danger-50)}.ct__remove svg{width:14px;height:14px}.ct__subtotal{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);color:var(--color-text);text-align:right;white-space:nowrap;margin-left:auto}[data-theme=dark] .ct__thumb{background:linear-gradient(145deg,var(--color-neutral-700),var(--color-neutral-800))}.wa__btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#25d366;color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);cursor:pointer;text-decoration:none;transition:background .15s ease,transform .15s ease;line-height:1}.wa__btn:hover{background:#20bd5a;transform:translateY(-1px)}.wa__btn:active{transform:translateY(0)}.wa__btn--compact{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);gap:var(--space-1)}.wa__btn--full{width:100%}.wa__icon{width:18px;height:18px;flex-shrink:0}.wa__btn--compact .wa__icon{width:14px;height:14px}[data-theme=dark] .wa__btn{background:linear-gradient(180deg,#1eb858,#149c47);box-shadow:0 1px #ffffff1f inset,0 1px 4px #0000004d}[data-theme=dark] .wa__btn:hover{background:linear-gradient(180deg,#25d366,#1eb858);box-shadow:0 1px #ffffff26 inset,0 4px 14px #25d3664d}
