.qp-search-wrap{--qp-bg:#fff;--qp-surface:#fbfbfd;--qp-ink:#000;--qp-ink-subtle:#475569;--qp-muted:#64748b;--qp-blue:#007aff;--qp-blue-dark:#0062cc;--qp-blue-light:#eff6ff;--qp-blue-border:#bfdbfe;--qp-yellow:#f59e0b;--qp-yellow-light:#fef9c3;--qp-yellow-dark:#854d0e;--qp-line:#e2e8f0;--qp-line-hover:#cbd5e1;box-sizing:border-box;width:90%;max-width:1200px;color:var(--qp-ink);-webkit-font-smoothing:antialiased;margin:28px auto 0;padding:0 0 10px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.qp-search-card{background:var(--qp-bg);border:1.5px solid var(--qp-line);border-radius:26px;margin-bottom:24px;padding:32px 30px 28px;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-search-card:hover{border-color:#cbd5e1;box-shadow:0 8px 26px -4px #0f172a0f}.qp-search-head{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-bottom:24px;display:flex}.qp-search-title{color:var(--qp-ink);letter-spacing:-.03em;text-align:center;margin:0;font-size:clamp(1.65rem,3.2vw,2.25rem);font-weight:800;line-height:1.15}.qp-search-subtitle{color:var(--qp-ink-subtle);text-align:center;max-width:62ch;margin:0;font-size:clamp(.88rem,1.4vw,1rem);font-weight:400;line-height:1.55}.qp-search-form{align-items:center;gap:12px;width:100%;display:flex}.qp-search-bar{flex:1;align-items:center;min-width:0;display:flex;position:relative}.qp-search-bar__icon{color:var(--qp-muted);pointer-events:none;font-size:19px;transition:color .2s;position:absolute;left:20px}.qp-search-bar__input{width:100%;height:52px;color:var(--qp-ink);background:var(--qp-bg);border:1.5px solid var(--qp-line);border-radius:9999px;outline:none;padding:0 48px 0 52px;font-family:inherit;font-size:clamp(.88rem,1.2vw,.95rem);font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 10px #00000005}.qp-search-bar__input::placeholder{color:#94a3b8;font-weight:400}.qp-search-bar__input:focus{border-color:var(--qp-blue);box-shadow:0 0 0 4px #007aff1f,0 4px 16px #0000000a}.qp-search-bar:focus-within .qp-search-bar__icon{color:var(--qp-blue)}.qp-search-clear-btn{width:26px;height:26px;color:var(--qp-ink-subtle);border:1px solid var(--qp-line);cursor:pointer;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;font-size:13px;transition:all .18s;display:flex;position:absolute;right:16px}.qp-search-clear-btn:hover{color:var(--qp-ink);background:#e2e8f0}.qp-search-submit-btn{color:#fff;background:var(--qp-blue);border:1.5px solid var(--qp-blue);cursor:pointer;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;height:52px;padding:0 28px;font-family:inherit;font-size:.95rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 14px #007aff47}.qp-search-submit-btn:hover:not(:disabled){background:var(--qp-blue-dark);border-color:var(--qp-blue-dark);transform:translateY(-1px);box-shadow:0 6px 18px #007aff61}.qp-search-submit-btn:active:not(:disabled){transform:translateY(0)}.qp-search-submit-btn:disabled{opacity:.7;cursor:not-allowed}.qp-submit-btn-icon{font-size:17px}.qp-state{text-align:center;color:var(--qp-muted);background:var(--qp-bg);border:2px dashed #bfdbfe;border-radius:26px;margin:16px 0;padding:50px 24px;font-size:.95rem;box-shadow:0 6px 20px #007aff08}.qp-state p{margin:0;font-weight:500}.qp-state--loading .qp-spinner{border:3px solid #e2e8f0;border-top-color:var(--qp-blue);border-radius:50%;width:26px;height:26px;margin-bottom:12px;animation:.8s linear infinite qp-spin;display:inline-block}.qp-state__icon{color:var(--qp-yellow);margin:0 auto 12px;font-size:26px;display:block}@keyframes qp-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.qp-skeleton-shimmer{background:linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 50%,#f1f5f9 100%) 0 0/200% 100%;animation:1.5s ease-in-out infinite qp-shimmer}.qp-skeleton-item{pointer-events:none;background:#fff;border-color:#f1f5f9}.qp-skeleton-link{box-sizing:border-box;align-items:center;gap:16px;width:100%;padding:16px 20px;display:flex}.qp-skeleton-icon{border-radius:12px;flex-shrink:0;width:40px;height:40px}.qp-skeleton-text-wrap{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.qp-skeleton-line{border-radius:8px;height:16px}.qp-skeleton-arrow{border-radius:50%;flex-shrink:0;width:32px;height:32px}.qp-results-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;animation:.28s cubic-bezier(.16,1,.3,1) qp-fade-in;display:flex}.qp-result-item{border:1.5px solid var(--qp-line);background:var(--qp-bg);border-radius:20px;transition:all .22s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:0 2px 10px #0f172a08}.qp-result-item:hover{border-color:var(--qp-blue-border);transform:translateY(-2px);box-shadow:0 10px 24px -4px #007aff1f,0 2px 6px #00000008}.qp-result-link{color:var(--qp-ink);align-items:center;gap:16px;padding:16px 20px;text-decoration:none;transition:background-color .18s;display:flex;position:relative}.qp-result-link:hover,.qp-result-link:focus-visible{background-color:#f8fafc}.qp-result-link:focus-visible{outline:2px solid var(--qp-blue);outline-offset:-2px}.qp-result-icon-wrap{background:var(--qp-blue-light);width:40px;height:40px;color:var(--qp-blue);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.qp-result-item:hover .qp-result-icon-wrap{background:var(--qp-blue);color:#fff;box-shadow:0 4px 12px #007aff47}.qp-result-icon{font-size:18px}.qp-result-name{color:var(--qp-ink);letter-spacing:-.01em;flex:1;font-size:clamp(.92rem,1.25vw,1.05rem);font-weight:700;line-height:1.38}.qp-result-arrow-wrap{width:32px;height:32px;color:var(--qp-muted);background:#f1f5f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.qp-result-item:hover .qp-result-arrow-wrap{background:var(--qp-blue);color:#fff;transform:translate(2px,-2px)}.qp-result-arrow{font-size:16px}.qp-highlight{color:inherit;font-weight:inherit;background:#fef08a;border:none;border-radius:0;padding:0}.qp-loadmore{text-align:center;margin-top:26px}.qp-loadmore__btn{color:var(--qp-blue);background:var(--qp-bg);border:1.5px solid var(--qp-blue);cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;min-width:190px;min-height:46px;padding:12px 34px;font-family:inherit;font-size:.92rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 14px #007aff1a}.qp-loadmore__btn:hover:not(:disabled){background:var(--qp-blue);color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px #007aff42}.qp-loadmore__btn:disabled{cursor:not-allowed;opacity:.85}.qp-loadmore__btn.is-loading{color:var(--qp-blue);background:#eff6ff;border-color:#bfdbfe}.qp-dots-loader{justify-content:center;align-items:center;gap:6px;height:20px;display:inline-flex}.qp-dot{background-color:currentColor;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite both qpAppleBounce;display:inline-block}.qp-dot:first-child{animation-delay:-.32s}.qp-dot:nth-child(2){animation-delay:-.16s}.qp-dot:nth-child(3){animation-delay:0s}@keyframes qpAppleBounce{0%,80%,to{opacity:.3;transform:scale(.4)}40%{opacity:1;transform:scale(1.15)}}@keyframes qp-spin{to{transform:rotate(360deg)}}@keyframes qp-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.qp-search-wrap{width:92%;margin-top:18px}.qp-search-card{border-radius:22px;padding:24px 18px 20px}.qp-search-form{flex-direction:row;align-items:center;gap:10px}.qp-search-bar__input{height:48px;padding-left:44px;padding-right:38px;font-size:.9rem}.qp-search-bar__icon{font-size:17px;left:16px}.qp-search-submit-btn{border-radius:50%;gap:0;width:48px;min-width:48px;height:48px;padding:0}.qp-submit-btn-text{display:none}.qp-submit-btn-icon{margin:0;font-size:18px}.qp-result-link{gap:12px;padding:14px 16px}.qp-result-icon-wrap{width:36px;height:36px}}@media (max-width:480px){.qp-search-wrap{width:94%;margin-top:14px}.qp-search-card{border-radius:20px;padding:20px 14px 18px}.qp-search-form{gap:8px}.qp-search-submit-btn{width:44px;min-width:44px;height:44px}.qp-search-bar__input{height:44px;padding-left:40px;padding-right:34px;font-size:.85rem}.qp-search-bar__icon{font-size:16px;left:14px}.qp-result-item{border-radius:16px}}
.qp-filter-search-wrap{box-sizing:border-box;color:#000;-webkit-font-smoothing:antialiased;width:90%;max-width:1200px;margin:32px auto 0;padding:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.qp-filter-title-card{box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:26px;align-items:center;gap:20px;width:100%;margin-bottom:24px;padding:24px 28px;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 20px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-filter-title-card:hover{border-color:#cbd5e1;box-shadow:0 8px 24px -2px #0f172a0f}.qp-filter-title-badge{color:#007aff;background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border:1.5px solid #bfdbfe;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:58px;display:flex;box-shadow:0 4px 14px #007aff26}.qp-filter-title-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.qp-filter-title{color:#000;letter-spacing:-.025em;word-break:break-word;margin:0;font-size:clamp(1.35rem,2.5vw,1.95rem);font-weight:800;line-height:1.22}.qp-filter-subtitle{color:#64748b;margin:0;font-size:clamp(.85rem,1.25vw,.98rem);line-height:1.5}.qp-filter-card{box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:26px;width:100%;max-width:100%;margin-bottom:28px;padding:28px;transition:all .22s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-filter-card:hover{border-color:#cbd5e1}.qp-filter-grid{box-sizing:border-box;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px;width:100%;max-width:100%;margin-bottom:24px;display:grid}.qp-custom-dropdown{box-sizing:border-box;width:100%;min-width:0;max-width:100%;position:relative}.qp-dropdown-label{letter-spacing:.01em;color:#334155;text-overflow:ellipsis;white-space:nowrap;justify-content:space-between;align-items:center;min-width:0;margin-bottom:7px;font-size:.82rem;font-weight:750;display:flex;overflow:hidden}.qp-dropdown-trigger{cursor:pointer;box-sizing:border-box;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:16px;justify-content:space-between;align-items:center;width:100%;min-width:0;max-width:100%;min-height:50px;padding:13px 16px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.qp-dropdown-trigger:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 8px #0f172a0a}.qp-dropdown-trigger.is-open{background:#fff;border-color:#007aff;box-shadow:0 0 0 3px #007aff1f}.qp-dropdown-trigger__text{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;text-align:left;flex:1;min-width:0;font-size:.94rem;font-weight:600;overflow:hidden}.qp-dropdown-trigger__text.is-placeholder{color:#94a3b8;font-weight:450}.qp-dropdown-trigger__actions{flex-shrink:0;align-items:center;gap:8px;margin-left:8px;display:flex}.qp-dropdown-clear-btn{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:9999px;justify-content:center;align-items:center;padding:4px;transition:all .18s;display:flex}.qp-dropdown-clear-btn:hover{color:#0f172a;background:#e2e8f0}.qp-dropdown-chevron{color:#94a3b8;transition:transform .25s cubic-bezier(.16,1,.3,1),color .18s}.qp-dropdown-trigger.is-open .qp-dropdown-chevron{color:#007aff;transform:rotate(180deg)}.qp-dropdown-menu{z-index:100;box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:18px;width:100%;max-width:100%;max-height:280px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden auto;box-shadow:0 16px 36px -4px #0f172a1f,0 4px 12px -2px #0f172a0f}.qp-dropdown-item{cursor:pointer;color:#1e293b;text-align:left;word-break:break-word;white-space:normal;box-sizing:border-box;border-radius:12px;padding:10px 14px;font-size:.92rem;font-weight:500;line-height:1.4;transition:all .15s}.qp-dropdown-item:hover{background:#f1f5f9}.qp-dropdown-item.is-placeholder{color:#64748b;border-bottom:1px solid #f1f5f9;margin-bottom:4px;font-weight:450}.qp-dropdown-item.is-selected{color:#007aff;background:#eff6ff;font-weight:700}.qp-dropdown-loading{text-align:center;color:#64748b;padding:12px 16px;font-size:.88rem;font-weight:500}.qp-dropdown-loadmore{text-align:center;cursor:pointer;color:#007aff;background:#eff6ff;border-radius:12px;margin-top:4px;padding:10px 14px;font-size:.88rem;font-weight:700;transition:background .15s}.qp-dropdown-loadmore:hover{background:#dbeafe}.qp-filter-action-wrap{justify-content:center;align-items:center;margin-top:8px;display:flex}.qp-filter-search-btn{color:#fff;cursor:pointer;background:#007aff;border:none;border-radius:9999px;justify-content:center;align-items:center;gap:10px;height:50px;padding:0 36px;font-family:inherit;font-size:.98rem;font-weight:700;transition:all .22s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 16px #007aff40}.qp-filter-search-btn:hover:not(:disabled){background:#0062cc;transform:translateY(-1px);box-shadow:0 8px 22px #007aff59}.qp-filter-search-btn:active:not(:disabled){transform:translateY(0)}.qp-filter-search-btn:disabled{opacity:.8;cursor:default}.qp-filter-results{margin-top:36px}.qp-filter-results-head{border-bottom:1.5px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.qp-filter-results-title{color:#000;letter-spacing:-.02em;margin:0;font-size:clamp(1.2rem,2.2vw,1.45rem);font-weight:800}.qp-filter-results-badge{color:#007aff;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9999px;align-items:center;padding:4px 12px;font-size:.8rem;font-weight:700;display:inline-flex}.qp-filter-state-card{text-align:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:24px;flex-direction:column;align-items:center;gap:12px;padding:44px 20px;display:flex;box-shadow:0 4px 18px -2px #0f172a0a}.qp-filter-state-icon{color:#64748b;background:#f1f5f9;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;font-size:24px;display:flex}.qp-filter-state-title{color:#0f172a;margin:0;font-size:1.1rem;font-weight:750}.qp-filter-state-desc{color:#64748b;max-width:44ch;margin:0;font-size:.9rem}.qp-filter-results-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.qp-filter-res-card{box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:22px;flex-direction:column;justify-content:space-between;padding:22px;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 18px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-filter-res-card:hover{border-color:#007aff;transform:translateY(-2px);box-shadow:0 10px 28px -4px #007aff1f}.qp-filter-res-top{margin-bottom:16px}.qp-filter-res-tag{letter-spacing:.04em;text-transform:uppercase;border-radius:9999px;align-items:center;margin-bottom:12px;padding:4px 12px;font-size:.74rem;font-weight:750;display:inline-flex}.qp-filter-res-tag--blue{color:#007aff;background:#eff6ff;border:1px solid #bfdbfe}.qp-filter-res-tag--yellow{color:#d97706;background:#fef3c7;border:1.5px solid #fcd34d}.qp-filter-res-name{color:#000;letter-spacing:-.015em;word-break:break-word;margin:0 0 6px;font-size:1.15rem;font-weight:750;line-height:1.3}.qp-filter-res-desc{color:#64748b;margin:0;font-size:.88rem;line-height:1.5}.qp-filter-res-actions{align-items:center;gap:10px;margin-top:18px;display:flex}.qp-filter-view-btn{color:#fff;box-sizing:border-box;background:#007aff;border-radius:9999px;flex:1;justify-content:center;align-items:center;gap:8px;height:44px;padding:0 20px;font-size:.92rem;font-weight:650;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.qp-filter-view-btn:hover{background:#0062cc;transform:translateY(-1px);box-shadow:0 4px 14px #007aff40}.qp-filter-bookmark-btn{color:#475569;cursor:pointer;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.qp-filter-bookmark-btn:hover{color:#007aff;background:#eff6ff;border-color:#007aff;transform:translateY(-1px)}.qp-filter-loadmore-wrap{justify-content:center;margin-top:32px;display:flex}.qp-filter-loadmore-btn{color:#007aff;cursor:pointer;background:#fff;border:1.5px solid #007aff;border-radius:9999px;justify-content:center;align-items:center;height:44px;padding:0 28px;font-size:.92rem;font-weight:700;transition:all .2s;display:inline-flex}.qp-filter-loadmore-btn:hover:not(:disabled){background:#eff6ff;transform:translateY(-1px)}.qp-filter-loadmore-btn:disabled{opacity:.7;cursor:default}@media (max-width:768px){.qp-filter-title-card{border-radius:22px;gap:16px;margin-bottom:18px;padding:18px 20px}.qp-filter-title-badge{border-radius:15px;width:48px;height:48px}.qp-filter-card{border-radius:22px;padding:20px}.qp-filter-grid{grid-template-columns:1fr;gap:14px}.qp-filter-results-grid{grid-template-columns:1fr}}@media (max-width:520px){.qp-filter-title-card{border-radius:20px;flex-direction:row;align-items:flex-start;gap:14px;padding:16px}.qp-filter-title-badge{border-radius:13px;width:42px;height:42px}.qp-filter-card{border-radius:20px;padding:16px}.qp-filter-search-btn{width:100%}}
:root{--qp-bg:#fff;--qp-text:#0b0b0b;--qp-blue:#0b74ff;--qp-blue-dark:#04518a;--qp-yellow:#f2c200;--qp-gap:20px;--qp-radius:24px;--qp-ease:cubic-bezier(.16,1,.3,1)}.qp-page-container{background:var(--qp-bg);color:var(--qp-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:auto;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:flex}.qp-header{display:none}.qp-header-icon{color:var(--qp-blue);opacity:.92;animation:qp-icon-pop .42s var(--qp-ease)both;font-size:36px}.qp-main{gap:var(--qp-gap);box-sizing:border-box;grid-template-columns:1fr;width:90%;max-width:1200px;margin:16px auto 36px;padding:0;display:grid}.qp-card{border-radius:var(--qp-radius);opacity:0;animation:qp-card-appear .42s var(--qp-ease)forwards;background:#fff;border:1.5px solid #e2e8f0;padding:24px 26px;transform:translateY(8px);box-shadow:0 4px 20px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-card:first-child{animation-delay:0s}.qp-card:nth-child(2){animation-delay:70ms}.qp-card:nth-child(3){animation-delay:.13s}.qp-card:nth-child(4){animation-delay:.19s}.qp-card:nth-child(5){animation-delay:.25s}.qp-intro{border-left:4px solid var(--qp-blue)}.qp-section-header{align-items:center;gap:12px;margin-bottom:14px;display:flex}.qp-section-icon{color:var(--qp-blue);flex-shrink:0;font-size:22px}.qp-title{color:var(--qp-blue);margin:0 0 6px;font-size:28px;line-height:1.05}.qp-subtitle{color:var(--qp-blue-dark);margin:0;font-size:18px}.qp-plain{color:var(--qp-text);margin:0 0 12px;font-size:15px;line-height:1.7}.qp-plain:last-child{margin-bottom:0}.qp-meta{color:#0b0b0b99;margin-top:8px;font-size:13px}.qp-card:hover{transition:transform .26s var(--qp-ease),box-shadow .26s var(--qp-ease);transform:translateY(-2px);box-shadow:0 12px 30px #04518a14}.qp-card :focus,.qp-title:focus{outline-offset:3px;border-radius:8px;outline:3px solid #0b74ff1f}.qp-content{flex-direction:column;gap:12px;margin-top:8px;display:flex}.qp-semester-card{background:#f8fafc;border:1px solid #04518a14;border-radius:8px;transition:all .2s;overflow:hidden}.qp-semester-card:hover{border-color:var(--qp-blue);box-shadow:0 4px 12px #0b74ff1a}.qp-semester-toggle{cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:14px 16px;font-family:inherit;transition:all .2s;display:flex}.qp-semester-toggle:hover{background:#0b74ff0a}.qp-semester-toggle.qp-semester-active{background:#0b74ff14;border-bottom:1px solid #04518a1a}.qp-semester-title{color:var(--qp-blue-dark);text-align:left;font-size:16px;font-weight:600}.qp-batches-container{animation:qp-slideDown .3s var(--qp-ease);background:#fff;padding:12px}.qp-batch-card{background:#fafbfc;border:1px solid #04518a0f;border-radius:6px;margin-bottom:8px;transition:all .2s;overflow:hidden}.qp-batch-card:last-child{margin-bottom:0}.qp-batch-card:hover{border-color:var(--qp-yellow)}.qp-batch-toggle{cursor:pointer;width:100%;color:var(--qp-text);background:0 0;border:none;align-items:center;gap:10px;padding:12px 14px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s;display:flex}.qp-batch-toggle:hover{background:#f2c2000f}.qp-batch-toggle.qp-batch-active{background:#f2c2001a;border-bottom:1px solid #04518a0f}.qp-batch-toggle svg:first-child{color:var(--qp-blue)}.qp-exams-container{animation:qp-fadeIn .3s var(--qp-ease);background:#fff;padding:10px 12px}.qp-no-exams{color:#0b0b0b80;background:#f8f8f8;border:1px dashed #04518a1a;border-radius:6px;margin:0;padding:12px;font-size:14px}.qp-exam-card-wrapper{background:#fff;border:1px solid #04518a14;border-radius:6px;align-items:stretch;gap:0;margin-bottom:8px;transition:all .2s;display:flex;overflow:hidden}.qp-exam-card-wrapper:last-child{margin-bottom:0}.qp-exam-card-wrapper:hover{border-color:var(--qp-yellow);box-shadow:0 2px 8px #f2c20026}.qp-exam-card{color:inherit;background:0 0;border:none;flex:1;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.qp-exam-card:hover{color:var(--qp-blue-dark);text-decoration:none;transform:translate(3px)}.qp-exam-card svg:first-child{color:var(--qp-blue)}.qp-exam-card svg:last-child{color:#0b0b0b4d;margin-left:auto}.qp-exam-card:hover svg:last-child{color:var(--qp-yellow);transform:translate(3px)}.qp-download-btn{width:44px;color:var(--qp-blue);cursor:pointer;background:#0b74ff0f;border:none;border-left:1px solid #04518a14;justify-content:center;align-items:center;transition:all .2s;display:flex}.qp-download-btn:hover{background:var(--qp-blue);color:#fff}.qp-download-btn:active{transform:scale(.95)}.qp-download-btn.qp-downloading{background:var(--qp-yellow);color:var(--qp-text);cursor:wait}.qp-download-btn:disabled{cursor:wait}.qp-steps{flex-direction:column;gap:12px;margin-top:8px;display:flex}.qp-step{background:#f8fafc;border:1px solid #04518a0a;border-radius:8px;align-items:flex-start;gap:14px;padding:12px 14px;transition:all .2s;display:flex}.qp-step:hover{border-color:var(--qp-blue);background:#0b74ff0a}.qp-step-number{background:var(--qp-blue);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:flex}.qp-step .qp-plain{margin:0;padding-top:4px}.qp-features-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:8px;display:grid}.qp-feature{background:#f8fafc;border:1px solid #04518a0a;border-radius:8px;gap:12px;padding:14px;transition:all .2s;display:flex}.qp-feature:hover{border-color:var(--qp-yellow);background:#f2c2000f}.qp-feature-icon{color:var(--qp-blue);flex-shrink:0;font-size:22px}.qp-feature-content{flex-direction:column;gap:4px;display:flex}.qp-feature-content strong{color:var(--qp-blue-dark);font-size:14px}.qp-feature-content .qp-plain{color:#0b0b0bb3;margin:0;font-size:13px}.qp-dir-section{width:100%}.qp-dir-title-card{box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:26px;align-items:center;gap:20px;width:100%;margin-bottom:24px;padding:24px 28px;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 20px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-dir-title-card:hover{border-color:#cbd5e1;box-shadow:0 8px 24px -2px #0f172a0f}.qp-dir-title-badge{color:#d97706;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:1.5px solid #fcd34d;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:58px;display:flex;box-shadow:0 4px 14px #f59e0b2e}.qp-dir-title-content{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.qp-dir-tag{letter-spacing:.06em;text-transform:uppercase;color:#007aff;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9999px;align-items:center;width:fit-content;padding:3px 10px;font-size:.72rem;font-weight:750;display:inline-flex}.qp-dir-title{color:#000;letter-spacing:-.025em;word-break:break-word;margin:0;font-size:clamp(1.35rem,2.5vw,1.95rem);font-weight:800;line-height:1.22}.qp-dir-subtitle{color:#64748b;margin:0;font-size:clamp(.85rem,1.25vw,.98rem);line-height:1.5}@media (max-width:768px){.qp-dir-title-card{border-radius:22px;gap:16px;margin-bottom:18px;padding:18px 20px}.qp-dir-title-badge{border-radius:15px;width:48px;height:48px}.qp-dir-title{font-size:clamp(1.2rem,3.4vw,1.5rem)}.qp-dir-subtitle{font-size:.88rem}}@media (max-width:520px){.qp-dir-title-card{border-radius:20px;flex-direction:row;align-items:flex-start;gap:14px;margin-bottom:16px;padding:16px}.qp-dir-title-badge{border-radius:13px;width:42px;height:42px}.qp-dir-title{font-size:1.18rem}.qp-dir-subtitle{font-size:.82rem}}.qp-dir-cards-list,.qp-dir-tree{flex-direction:column;gap:14px;display:flex}@keyframes qp-dir-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.qp-dir-skeleton-tree{flex-direction:column;gap:14px;width:100%;display:flex}.qp-dir-skeleton-card{box-sizing:border-box;pointer-events:none;background:#fff;border:1.5px solid #e2e8f0;border-radius:22px;align-items:center;gap:16px;width:100%;min-height:64px;padding:16px 22px;display:flex;box-shadow:0 4px 18px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-dir-skeleton-icon{background:linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 50%,#f1f5f9 100%) 0 0/200% 100%;border-radius:14px;flex-shrink:0;width:44px;height:44px;animation:1.5s ease-in-out infinite qp-dir-shimmer}.qp-dir-skeleton-text-wrap{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.qp-dir-skeleton-line{background:linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 50%,#f1f5f9 100%) 0 0/200% 100%;border-radius:8px;height:18px;animation:1.5s ease-in-out infinite qp-dir-shimmer}.qp-dir-skeleton-chevron{background:linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 50%,#f1f5f9 100%) 0 0/200% 100%;border-radius:50%;flex-shrink:0;width:32px;height:32px;animation:1.5s ease-in-out infinite qp-dir-shimmer}.qp-dir-state-loading,.qp-dir-state-error,.qp-dir-empty-msg{text-align:center;color:#64748b;background:#fff;border:1.5px solid #e2e8f0;border-radius:22px;padding:34px 20px;font-size:.94rem;font-weight:500}.qp-dir-state-error{color:#ef4444}.qp-dir-node--toplevel{margin-top:0}.qp-dir-node-btn--toplevel{cursor:pointer;text-align:left;color:#000;box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:22px;align-items:center;gap:16px;width:100%;min-height:64px;padding:16px 22px;font-family:inherit;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 18px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-dir-node-btn--toplevel:hover{border-color:#007aff;transform:translateY(-2px);box-shadow:0 10px 26px -4px #007aff1f}.qp-dir-node-btn--toplevel.is-expanded{background:#fff;border-color:#007aff;box-shadow:0 0 0 2px #007aff26,0 10px 26px -4px #007aff1f}.qp-dir-node-btn--toplevel .qp-dir-node-name{color:#000;letter-spacing:-.015em;flex:1;font-size:clamp(1.05rem,1.4vw,1.18rem);font-weight:750}.qp-dir-node--nested{margin-top:8px}.qp-dir-node-btn--nested{cursor:pointer;text-align:left;color:#0f172a;box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:16px;align-items:center;gap:12px;width:100%;min-height:52px;padding:12px 18px;font-family:inherit;font-size:.94rem;font-weight:650;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 1px 3px #0f172a05}.qp-dir-node-btn--nested:hover{background:#fbfdff;border-color:#007aff;transform:translate(2px);box-shadow:0 4px 12px #007aff14}.qp-dir-node-btn--nested.is-expanded{color:#007aff;background:#eff6ff;border-color:#007aff;font-weight:700;box-shadow:0 4px 14px #007aff1f}.qp-dir-node-btn--nested .qp-dir-node-name{word-break:break-word;flex:1}.qp-dir-icon-badge{flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.qp-dir-icon-badge.is-toplevel{color:#d97706;background:#fef3c7;border-radius:14px;width:44px;height:44px;font-size:20px}.qp-dir-icon-badge.is-toplevel.is-expanded{color:#fff;background:#007aff;box-shadow:0 4px 12px #007aff40}.qp-dir-icon-badge:not(.is-toplevel){color:#f59e0b;background:#fffbeb;border-radius:10px;width:34px;height:34px;font-size:16px}.qp-dir-icon-badge:not(.is-toplevel).is-expanded{color:#fff;background:#007aff}.qp-dir-chevron{color:#64748b;background:#f1f5f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-left:auto;font-size:16px;transition:all .2s;display:flex}.qp-dir-chevron.is-expanded{color:#fff;background:#007aff}.qp-dir-children{border-left:2px solid #e2e8f0;margin-top:10px;margin-bottom:8px;margin-left:8px;padding-left:8px;animation:.25s cubic-bezier(.16,1,.3,1) qp-slideDown}.qp-dir-loading,.qp-dir-empty{color:#64748b;padding:8px 12px;font-size:.86rem}.qp-spinner-sm{vertical-align:middle;border:2px solid #e2e8f0;border-top-color:#007aff;border-radius:50%;width:14px;height:14px;margin-right:6px;animation:.8s linear infinite qp-spin;display:inline-block}.qp-dir-batch-group{margin-top:10px;margin-bottom:10px}.qp-dir-batch-header{margin-bottom:8px}.qp-dir-batch-badge{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:9999px;align-items:center;gap:6px;padding:4px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.qp-dir-exams-list{flex-wrap:wrap;align-items:center;gap:8px;margin-left:4px;display:flex}.qp-dir-exam-item{align-items:center;gap:6px;display:inline-flex}.qp-dir-exam-link{color:#fff;background:#007aff;border-radius:9999px;align-items:center;gap:6px;padding:7px 16px;font-size:.82rem;font-weight:700;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 2px 8px #007aff38}.qp-dir-exam-link:hover{background:#0062cc;transform:translateY(-1px);box-shadow:0 4px 12px #007aff59}.qp-dir-bookmark-btn{color:#64748b;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;transition:all .2s;display:inline-flex}.qp-dir-bookmark-btn:hover{color:#d97706;background:#fffbeb;border-color:#f59e0b;transform:translateY(-1px)}.qp-dir-sub-loadmore{color:#007aff;cursor:pointer;background:#fff;border:1.5px solid #bfdbfe;border-radius:9999px;align-items:center;gap:6px;margin-top:10px;padding:6px 16px;font-size:.82rem;font-weight:700;transition:all .2s;display:inline-flex}.qp-dir-sub-loadmore:hover{background:#eff6ff;border-color:#007aff}.qp-dir-loadmore-wrap{text-align:center;margin-top:24px}.qp-dir-loadmore-btn{color:#007aff;cursor:pointer;background:#fff;border:1.5px solid #007aff;border-radius:9999px;justify-content:center;align-items:center;min-width:210px;min-height:46px;padding:12px 34px;font-family:inherit;font-size:.92rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 14px #007aff1a}.qp-dir-loadmore-btn:hover:not(:disabled){color:#fff;background:#007aff;transform:translateY(-1px);box-shadow:0 6px 18px #007aff42}.qp-dir-loadmore-btn:disabled{cursor:not-allowed;opacity:.85}.qp-dir-loadmore-btn.is-loading{color:#007aff;background:#eff6ff;border-color:#bfdbfe}.qp-dots-loader{justify-content:center;align-items:center;gap:6px;height:20px;display:inline-flex}.qp-dot{background-color:currentColor;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite both qpAppleBounce;display:inline-block}.qp-dot:first-child{animation-delay:-.32s}.qp-dot:nth-child(2){animation-delay:-.16s}.qp-dot:nth-child(3){animation-delay:0s}@keyframes qpAppleBounce{0%,80%,to{opacity:.3;transform:scale(.4)}40%{opacity:1;transform:scale(1.15)}}.qp-feedback-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:26px;padding:26px 28px;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px -2px #0f172a0a,0 2px 6px -1px #0f172a05}.qp-feedback-card:hover{border-color:#cbd5e1;box-shadow:0 8px 26px -4px #0f172a0f}.qp-feedback-head{align-items:center;gap:14px;margin-bottom:16px;display:flex}.qp-feedback-icon-pill{color:#d97706;background:#fef3c7;border:1px solid #fde68a;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.qp-feedback-title{color:#000;letter-spacing:-.015em;margin:0 0 2px;font-size:1.15rem;font-weight:800}.qp-feedback-desc{color:#64748b;margin:0;font-size:.86rem;line-height:1.45}.qp-feedback-textarea{color:#000;box-sizing:border-box;resize:vertical;background:#fbfbfd;border:1.5px solid #e2e8f0;border-radius:18px;outline:none;width:100%;padding:14px 18px;font-family:inherit;font-size:.92rem;transition:all .2s}.qp-feedback-textarea:focus{background:#fff;border-color:#007aff;box-shadow:0 0 0 4px #007aff1f}.qp-feedback-footer{justify-content:flex-end;margin-top:12px;display:flex}.qp-feedback-btn{color:#fff;cursor:pointer;background:#007aff;border:none;border-radius:9999px;align-items:center;gap:8px;padding:10px 24px;font-family:inherit;font-size:.9rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #007aff40}.qp-feedback-btn:hover:not(:disabled){background:#0062cc;transform:translateY(-1px);box-shadow:0 6px 16px #007aff59}.qp-feedback-btn:disabled{opacity:.6;cursor:not-allowed}@keyframes qp-card-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes qp-icon-pop{0%{opacity:0;transform:scale(.95)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes qp-slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes qp-fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:500px){.qp-main{gap:16px;width:92%;max-width:1200px;padding:0}.qp-card{border-radius:20px;padding:18px 16px}.qp-title{font-size:20px}.qp-subtitle{font-size:15px}.qp-section-icon{font-size:16px}.qp-header{padding:12px 16px 0}.qp-header-icon{font-size:28px}.qp-semester-toggle{padding:12px 14px}.qp-semester-title{font-size:14px}.qp-batch-toggle{padding:10px 12px;font-size:13px}.qp-exam-card{padding:8px 10px;font-size:13px}.qp-download-btn{width:40px}.qp-step{gap:10px;padding:10px 12px}.qp-step-number{width:24px;height:24px;font-size:12px}.qp-features-grid{grid-template-columns:1fr}.qp-feature{padding:12px}}@media (max-width:640px){.qp-subject-row{flex-direction:column;align-items:stretch;gap:12px}.qp-subject-select-wrap{min-width:0;max-width:100%}.qp-subject-search{flex-direction:column;gap:8px;display:flex}.qp-subject-search-input,.qp-subject-select{box-sizing:border-box;width:100%}.qp-subject-info{flex-wrap:wrap;align-items:center;gap:8px;margin-top:0;display:flex}.qp-subject-view-btn,.qp-subject-dl-btn{justify-content:center;width:100%}.qp-subject-count{white-space:normal}}@media (min-width:501px) and (max-width:640px){.qp-main{gap:16px;width:92%;max-width:1200px;padding:0}.qp-card{border-radius:22px;padding:22px 20px}.qp-title{font-size:22px}.qp-subtitle{font-size:16px}.qp-section-icon{font-size:18px}}@media (min-width:1100px){.qp-main{gap:22px;width:90%;max-width:1200px}}@media print{.qp-page-container{background:#fff}.qp-card{box-shadow:none;break-inside:avoid;opacity:1;border:1px solid #ccc;animation:none;transform:none}.qp-batches-container,.qp-exams-container{animation:none!important;display:block!important}.qp-feedback{display:none}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:high){.qp-semester-card,.qp-batch-card,.qp-exam-card-wrapper{border-width:2px;border-color:#000}}.qp-subject-row{flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px;display:flex}.qp-subject-select-wrap{flex:1;min-width:220px;max-width:480px;position:relative;overflow:visible}.qp-subject-select{width:100%;color:var(--qp-text);appearance:none;cursor:pointer;background:#f8faff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2304518a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") right 12px center no-repeat;border:1.5px solid #04518a2e;border-radius:8px;padding:10px 38px 10px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.qp-subject-select:focus{border-color:var(--qp-blue);outline:none;box-shadow:0 0 0 3px #0b74ff1a}.qp-subject-select:hover{border-color:var(--qp-blue)}.qp-subject-search{position:relative}.qp-subject-search-input{width:100%;color:var(--qp-text);background:#f8faff;border:1.5px solid #04518a2e;border-radius:8px;padding:10px 40px 10px 14px;font-family:inherit;font-size:14px}.qp-subject-clear{color:#0b0b0b73;cursor:pointer;background:0 0;border:none;font-size:16px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.qp-subject-dropdown{z-index:99999;background:#fff;border:1px solid #04518a14;border-radius:8px;max-height:220px;margin-top:8px;display:none;position:absolute;left:0;right:0;overflow:auto;box-shadow:0 8px 24px #04518a14}.qp-subject-dropdown.open{display:block}.qp-subject-dropdown-item{cursor:pointer;padding:8px 12px}.qp-subject-dropdown-item:hover,.qp-subject-dropdown-item:focus{background:#0b74ff0f}.qp-subject-dropdown-empty{color:#0b0b0b80;padding:10px 12px}.qp-subject-info{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.qp-subject-count{color:#0b0b0b8c;white-space:nowrap;background:#0b74ff12;border-radius:999px;padding:5px 12px;font-size:13px}.qp-subject-dl-btn{background:var(--qp-blue);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:7px;padding:9px 18px;font-family:inherit;font-size:14px;font-weight:500;transition:background .2s,transform .15s,box-shadow .2s;display:inline-flex;box-shadow:0 3px 10px #0b74ff38}.qp-subject-view-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#0d9488;border:none;border-radius:8px;align-items:center;gap:7px;padding:9px 18px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:background .2s,transform .15s,box-shadow .2s;display:inline-flex;box-shadow:0 3px 10px #0d948838}.qp-subject-view-btn:hover{background:#0f766e;transform:translateY(-1px);box-shadow:0 5px 16px #0d94884d}.qp-subject-dl-btn:hover:not(:disabled){background:var(--qp-blue-dark);transform:translateY(-1px);box-shadow:0 5px 16px #0b74ff4d}.qp-subject-dl-btn:disabled,.qp-subject-dl-btn.qp-downloading{opacity:.65;cursor:not-allowed;transform:none}@media (max-width:600px){.qp-subject-row{flex-direction:column;align-items:stretch}.qp-subject-select-wrap{max-width:100%}.qp-subject-info{justify-content:space-between}}.qp-exam-pills{flex-wrap:wrap;gap:8px;padding:8px 0 10px;display:flex}.qp-exam-pill{color:var(--qp-blue-dark);cursor:pointer;transition:all .2s var(--qp-ease);background:#f4f7fb;border:1.5px solid #04518a26;border-radius:999px;align-items:center;gap:7px;padding:8px 14px;font-family:inherit;font-size:13.5px;font-weight:500;display:inline-flex}.qp-exam-pill:hover{border-color:var(--qp-blue);color:var(--qp-blue);background:#0b74ff12}.qp-exam-pill-active{background:var(--qp-blue);border-color:var(--qp-blue);color:#fff;box-shadow:0 3px 10px #0b74ff40}.qp-exam-pill-active:hover{background:var(--qp-blue-dark);border-color:var(--qp-blue-dark);color:#fff}.qp-pill-count{opacity:.75;background:#ffffff40;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:400}.qp-exam-pill-active .qp-pill-count{opacity:1;background:#ffffff38}.qp-inline-viewer{animation:qp-fadeIn .28s var(--qp-ease);background:#f8faff;border:1.5px solid #0b74ff24;border-radius:10px;margin-top:12px;overflow:hidden}.qp-viewer-header{background:#0b74ff0f;border-bottom:1px solid #0b74ff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.qp-viewer-meta{color:var(--qp-blue-dark);align-items:center;gap:8px;font-size:14px;display:flex}.qp-viewer-count{color:#0b0b0b80;background:#0b74ff14;border-radius:999px;padding:2px 8px;font-size:12px}.qp-viewer-actions{align-items:center;gap:8px;display:flex}.qp-viewer-dl-btn{background:var(--qp-blue);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.qp-viewer-dl-btn:hover:not(:disabled){background:var(--qp-blue-dark)}.qp-viewer-dl-btn:disabled,.qp-viewer-dl-btn.qp-downloading{opacity:.65;cursor:not-allowed}.qp-viewer-close{color:#0b0b0b80;cursor:pointer;background:#fff;border:1px solid #04518a24;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.qp-viewer-close:hover{color:#e44;background:#fee;border-color:#e44}.qp-viewer-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:14px 16px;display:grid}.qp-viewer-img-wrap{cursor:zoom-in;aspect-ratio:3/4;background:#e8edf5;border:2px solid #0000;border-radius:8px;transition:border-color .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden}.qp-viewer-img-wrap:hover{border-color:var(--qp-blue);transform:translateY(-2px);box-shadow:0 6px 18px #0b74ff2e}.qp-img-expanded{aspect-ratio:unset;cursor:zoom-out;grid-column:1/-1;border-color:var(--qp-yellow)!important;box-shadow:0 8px 28px #f2c20038!important}.qp-viewer-img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.qp-img-expanded .qp-viewer-img{object-fit:contain;height:auto;max-height:80vh}.qp-img-page-badge{z-index:2;color:#fff;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;border-radius:999px;padding:2px 7px;font-size:11px;position:absolute;top:6px;left:8px}.qp-img-zoom-icon{z-index:2;color:#fff;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;background:#0b74ffbf;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:opacity .2s;display:flex;position:absolute;bottom:8px;right:8px}.qp-viewer-img-wrap:hover .qp-img-zoom-icon{opacity:1}@media (max-width:600px){.qp-viewer-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;padding:10px}.qp-viewer-header{flex-direction:column;align-items:flex-start}.qp-viewer-dl-btn span{display:none}.qp-exam-pills{gap:6px}.qp-exam-pill{padding:7px 11px;font-size:12.5px}}
