:root{--qv-overlay:rgba(17,26,35,0.50);--qv-surface:#ffffff;--qv-title-color:var(--gcid-primary-color);--qv-primary:var(--gcid-primary-color);--qv-shadow:0 28px 60px rgba(15,26,37,0.18);--qv-speed-open:520ms;--qv-speed-close:420ms}#main-content{position:relative;z-index:2}.qv-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:22px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 320ms ease,visibility 320ms ease}.qv-modal.is-active,.qv-modal.is-closing{visibility:visible;pointer-events:auto}.qv-modal.is-active{opacity:1}.qv-modal.is-closing{opacity:0}.qv-overlay{position:absolute;inset:0;background:var(--qv-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;transition:opacity 320ms ease}.qv-modal.is-active .qv-overlay{opacity:1}.qv-modal.is-closing .qv-overlay{opacity:0}.qv-panel{position:relative;width:min(760px,calc(100vw - 44px));max-height:min(78vh,760px);background:var(--qv-surface);border-radius:28px;box-shadow:var(--qv-shadow);overflow:hidden;opacity:0;transform:translateY(100px) scale(0.96);will-change:transform,opacity}.qv-modal.is-active .qv-panel{animation:qv-open-up var(--qv-speed-open) cubic-bezier(0.22,1,0.36,1) forwards}.qv-modal.is-closing .qv-panel{animation:qv-close-up var(--qv-speed-close) cubic-bezier(0.55,0.06,0.68,0.19) forwards}.qv-scroll{max-height:min(78vh,760px);overflow-y:auto;overflow-x:hidden;padding:34px 42px 28px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#97b8c2 transparent}.qv-scroll::-webkit-scrollbar{width:10px}.qv-scroll::-webkit-scrollbar-track{background:transparent;margin:10px 0}.qv-scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#b4d2da 0%,#86aeb8 100%);border-radius:999px;border:2px solid #ffffff}.qv-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#9ec2cb 0%,#739ba5 100%)}.qv-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border:0;background:transparent;padding:0;cursor:pointer;z-index:3;border-radius:999px;transition:background-color 180ms ease,transform 180ms ease}.qv-close:hover{background:rgba(11,124,131,0.08);transform:rotate(90deg)}.qv-close span{position:absolute;top:50%;left:50%;width:18px;height:1.8px;background:#738396;border-radius:2px}.qv-close span:first-child{transform:translate(-50%,-50%) rotate(45deg)}.qv-close span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}.qv-loading[hidden],.qv-content[hidden],.qv-error[hidden],.qv-status[hidden]{display:none!important}.qv-badge{display:inline-flex;align-items:center;min-height:28px;padding:6px 13px;border-radius:999px;background:var(--gcid-crl9fjg95f);color:var(--gcid-secondary-color);font-size:12px;font-weight:700;letter-spacing:0.08em;line-height:1;text-transform:uppercase;margin-bottom:18px}.qv-title{margin:0 0 10px;color:var(--qv-title-color);font-size:clamp(24px,3vw,30px);line-height:1.1;font-weight:700}.qv-subtitle{margin-bottom:18px;color:#6f7b8d;font-size:16px;line-height:1.45;font-style:italic}.qv-description{font-size:16px;line-height:1.58}.qv-note{display:none;margin-top:10px;padding:14px;border-radius:12px;background:#edf6f7;color:var(--qv-primary);font-size:14px;line-height:1.5}.qv-note p{margin:0}.qv-tags{display:flex;flex-wrap:wrap;gap:10px 8px;margin:20px 0}.qv-tag{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:9px 14px;border:1px solid #add6df;border-radius:11px;background:#f7fbfc;color:var(--qv-primary);font-size:14px;font-weight:600;line-height:1.2}.qv-status{margin:0 0 20px;padding:14px;border-radius:14px;border:1px solid transparent}.qv-status.is-success{background:#eef8f1;border-color:#c7e7cf}.qv-status.is-error{background:#fff3f4;border-color:#f0c7cc}.qv-status-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.qv-status-text{font-size:14px;font-weight:700;line-height:1.5}.qv-status.is-success .qv-status-text{color:#1f7a3d}.qv-status.is-error .qv-status-text{color:#a43a46}.qv-status-cart-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:11px;background:var(--qv-primary);color:#ffffff!important;text-decoration:none!important;font-size:13px;font-weight:700;white-space:nowrap;transition:transform 180ms ease,filter 180ms ease}.qv-status-cart-btn:hover{transform:translateY(-1px);filter:brightness(0.96)}.qv-actions{display:flex;gap:10px;align-items:stretch}.qv-btn{min-height:46px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;text-decoration:none!important;font-size:14px;font-weight:700;transition:transform 180ms ease,background-color 180ms ease,color 180ms ease,border-color 180ms ease,box-shadow 180ms ease,opacity 180ms ease;cursor:pointer}.qv-btn:hover{transform:translateY(-1px)}.qv-btn-primary{flex:1 1 auto;background:var(--qv-primary);color:#ffffff!important;border:1px solid var(--qv-primary);box-shadow:0 10px 18px rgba(11,124,131,0.14)}.qv-btn-primary:hover{filter:brightness(0.96)}.qv-btn-secondary{min-width:82px;background:transparent;color:var(--qv-primary);border:2px solid var(--qv-primary)}.qv-btn.is-loading,.qv-btn.is-disabled{pointer-events:none;opacity:0.74}.qv-error{color:#7b3d46;font-size:15px;line-height:1.5;padding-top:10px}.qv-lines{margin-bottom:14px}.qv-skeleton-tags{display:flex;flex-wrap:wrap;gap:10px 8px;margin-bottom:22px}.qv-skeleton-actions{display:flex;gap:10px}.qv-skeleton{position:relative;overflow:hidden;background:#edf3f5;border-radius:12px}.qv-skeleton::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,0.72) 50%,rgba(255,255,255,0) 100%);animation:qv-shimmer 1.3s infinite}@keyframes qv-shimmer{100%{transform:translateX(100%)}}.qv-skeleton-badge{width:180px;height:28px;border-radius:999px;margin-bottom:18px}.qv-skeleton-title{width:44%;height:44px;margin-bottom:12px}.qv-skeleton-subtitle{width:58%;height:22px;margin-bottom:20px}.qv-skeleton-line{width:100%;height:16px;margin-bottom:10px}.qv-skeleton-line-short{width:76%}.qv-skeleton-note{width:100%;height:64px;margin-bottom:18px}.qv-skeleton-tag{width:116px;height:38px;border-radius:11px}.qv-skeleton-btn{height:46px;border-radius:12px}.qv-skeleton-btn-main{flex:1 1 auto}.qv-skeleton-btn-small{width:82px}body.qv-lock{overflow:hidden;touch-action:none}.qv-related-wrap{margin-bottom:22px}.qv-related{display:grid;grid-template-columns:1fr 1fr;gap:10px}.qv-related-card{display:flex;align-items:center;padding:10px 18px;border:1px solid #add6df;border-radius:14px;background:#f7fbfc;text-decoration:none!important;transition:transform 180ms ease,border-color 180ms ease,box-shadow 180ms ease,background-color 180ms ease}.qv-related-card:hover{transform:translateY(-2px);border-color:var(--qv-primary);box-shadow:0 10px 22px rgba(11,124,131,0.08)}.qv-related-card-title{color:var(--qv-primary);font-size:16px;font-weight:700;line-height:1.25;margin:0}.qv-skeleton-related{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}.qv-skeleton-related-card{height:72px;border-radius:14px}@keyframes qv-open-up{0%{opacity:0;transform:translateY(110px) scale(0.95)}72%{opacity:1;transform:translateY(-10px) scale(1.01)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes qv-close-up{0%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-110vh) scale(0.96)}}@media (max-width:768px){.qv-panel{width:min(720px,calc(100vw - 30px));max-height:min(76vh,720px)}.qv-scroll{max-height:min(76vh,720px);padding:28px 24px 22px}}@media (max-width:640px){.qv-modal{align-items:flex-end;justify-content:stretch;padding:0}.qv-panel{width:100%;max-width:none;max-height:min(82vh,720px);border-radius:24px 24px 0 0;opacity:0;transform:translateY(100%);box-shadow:0 -18px 40px rgba(15,26,37,0.18)}.qv-modal.is-active .qv-panel{animation:qv-open-up-mobile 560ms cubic-bezier(0.22,1,0.36,1) forwards}.qv-modal.is-closing .qv-panel{animation:qv-close-up-mobile 420ms cubic-bezier(0.55,0.06,0.68,0.19) forwards}.qv-panel::before{content:"";position:absolute;top:10px;left:50%;transform:translateX(-50%);width:46px;height:5px;border-radius:999px;background:#d4e5e9;z-index:3}.qv-scroll{max-height:min(82vh,720px);padding:28px 18px calc(18px + env(safe-area-inset-bottom));scrollbar-width:none}.qv-scroll::-webkit-scrollbar{width:0;height:0}.qv-close{top:14px;right:12px;width:32px;height:32px}.qv-badge{min-height:26px;padding:6px 11px;font-size:11px;margin-bottom:16px}.qv-subtitle{font-size:15px;margin-bottom:16px}.qv-description{font-size:15px;line-height:1.56}.qv-note{padding:12px;font-size:13px;margin-bottom:16px}.qv-tags{gap:8px;margin-bottom:18px}.qv-tag{min-height:34px;padding:8px 12px;font-size:13px}.qv-status{margin-bottom:18px;padding:12px}.qv-status-inner{align-items:stretch}.qv-status-cart-btn{width:100%;min-height:42px}.qv-actions{position:sticky;bottom:0;background:#ffffff;padding-top:8px;gap:8px}.qv-btn{min-height:44px;font-size:14px;padding:0 14px}.qv-btn-secondary{min-width:76px}.qv-skeleton-title{width:56%;height:34px}.qv-skeleton-subtitle{width:70%;height:20px}.qv-skeleton-line{height:15px}.qv-skeleton-note{height:58px}.qv-skeleton-tag{width:108px;height:34px}.qv-skeleton-btn{height:44px}.qv-skeleton-btn-small{width:76px}.qv-related{grid-template-columns:1fr;gap:8px}.qv-related-card-title{font-size:15px}.qv-skeleton-related{grid-template-columns:1fr;gap:8px}.qv-skeleton-related-card{height:64px}}@keyframes qv-open-up-mobile{0%{opacity:0;transform:translateY(100%)}74%{opacity:1;transform:translateY(-10px)}100%{opacity:1;transform:translateY(0)}}@keyframes qv-close-up-mobile{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-120vh)}}.portal label{display:block;font-size:11px;font-weight:600;color:var(--gcid-primary-color);margin-bottom:5px;letter-spacing:0.04em;text-transform:uppercase}.portal input,.portal select{width:100%;padding:9px 12px;border:1.5px solid #c0dae2;border-radius:8px;font-size:13.5px;background:white;font-family:'DM Sans',sans-serif;color:var(--gcid-primary-color)transition:border-color 0.2s,box-shadow 0.2s;outline:none}.portal button{width:100%;background-color:var(--gcid-primary-color);color:var(--gcid-ani9umzfao)!important;font-size:16px!important;border-top-left-radius:10px;border-top-right-radius:10px;border-bottom-left-radius:10px;border-bottom-right-radius:10px;border:1px solid var(--gcid-primary-color)!important;transition-property:background-color,border-color;transition-duration:300ms;transition-timing-function:ease;transition-delay:0ms;padding-top:10px!important;padding-right:30px!important;padding-bottom:10px!important;padding-left:30px!important}.portal button:hover{background-color:var(--gcid-secondary-color);border-color:var(--gcid-secondary-color)!important;cursor:pointer}.portal .vpa-checkbox-field label{display:flex;align-items:center;width:100%;justify-content:flex-start;gap:10px}.portal .vpa-checkbox-field label{input{width:auto}