.circular-gallery{position:relative;width:100%;height:100%;overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab}.circular-gallery[data-pointer]{cursor:pointer}.circular-gallery[data-dragging]{cursor:grabbing}.circular-gallery-canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.circular-gallery-labels{position:absolute;inset:0;pointer-events:none}.circular-gallery-label{position:absolute;top:0;left:0;line-height:1.2;white-space:nowrap;will-change:transform,opacity}.circular-gallery-caption{position:absolute;top:0;left:50%;width:min(90%,36rem);text-align:center;opacity:0;pointer-events:none}.circular-gallery-caption-text{margin:0;line-height:1.5;opacity:.65}.circular-gallery-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s ease}.circular-gallery-close[data-visible]{opacity:.8;pointer-events:auto}.circular-gallery-close:hover{opacity:1}.circular-gallery-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}.circular-gallery-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ppt-portfolio{margin-top:24px;min-width:0;padding:28px 0 20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.ppt-portfolio-heading{padding:0 28px}.ppt-portfolio-kicker{font-size:12px;color:var(--primary);letter-spacing:.12em;font-weight:700}.ppt-portfolio h3{font-size:clamp(20px,3vw,26px);line-height:1.5;margin:8px 0;color:var(--text)}.ppt-portfolio-description{font-size:14px;color:var(--text-soft);line-height:1.8}.ppt-gallery-stage{height:clamp(260px,42vw,460px);width:100%;min-width:0}.ppt-gallery-cover{display:block;width:82%;height:100%;object-fit:contain;margin:auto}.ppt-gallery-controls,.ppt-reader-controls{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.ppt-gallery-controls button,.ppt-reader button{min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);font:inherit;cursor:pointer;padding:8px 14px;touch-action:manipulation}.ppt-gallery-controls button:hover,.ppt-reader button:hover{border-color:var(--primary);color:var(--primary)}.ppt-portfolio button:focus-visible,.ppt-reader button:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.ppt-gallery-count{font-size:13px;color:var(--text-soft);font-variant-numeric:tabular-nums;min-width:52px;text-align:center}.ppt-gallery-controls .ppt-gallery-read{font-size:13px;color:var(--primary)}.ppt-gallery-hint{margin:18px 20px 0;color:var(--text-soft);font-size:12px;text-align:center;line-height:1.7}.ppt-pages{margin:18px 28px 0;border-top:1px solid var(--border);padding-top:14px;color:var(--text-soft);font-size:13px}.ppt-pages summary{cursor:pointer;min-height:32px;display:list-item}.ppt-pages-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px;list-style:none}.ppt-pages a{color:var(--text-soft);text-decoration:none;display:block}.ppt-pages img{width:100%;height:auto;aspect-ratio:16/9;border-radius:6px;display:block;margin-bottom:6px}.ppt-reader{position:fixed;inset:0;width:min(1440px,96vw);height:min(900px,94dvh);max-width:100vw;max-height:100dvh;margin:auto;padding:16px;border:1px solid var(--border);border-radius:16px;color:var(--text);background:var(--surface);overflow:hidden}.ppt-reader[open]{display:flex;flex-direction:column;gap:12px}.ppt-reader::backdrop{background:#030712e0}.ppt-reader-toolbar{display:flex;align-items:center;gap:10px;flex-shrink:0}.ppt-reader-toolbar span{flex:1;min-width:0;font-size:14px;line-height:1.5}.ppt-reader-toolbar button{font-size:13px;flex-shrink:0}.ppt-reader-image{flex:1;min-height:0;overflow:auto;display:flex;align-items:center;justify-content:center;overscroll-behavior:contain;background:#081629;border-radius:8px}.ppt-reader-image img{display:block;width:100%;height:100%;object-fit:contain;flex-shrink:0}.ppt-reader-image.is-zoomed{display:block}.ppt-reader-image.is-zoomed img{width:max(160%,1100px);max-width:none;height:auto;object-fit:initial}.ppt-reader-controls{flex-shrink:0;font-size:13px;padding-bottom:env(safe-area-inset-bottom)}@media(max-width:600px){.ppt-portfolio{padding-top:20px;margin-top:18px}.ppt-portfolio-heading{padding:0 18px}.ppt-portfolio h3{font-size:20px}.ppt-gallery-stage{height:260px}.ppt-gallery-controls{gap:10px;padding:0 12px}.ppt-pages{margin-left:18px;margin-right:18px}.ppt-pages-grid{gap:12px;font-size:12px}.ppt-reader{width:100vw;height:100dvh;border:0;border-radius:0;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}.ppt-reader-toolbar{flex-wrap:wrap;gap:8px}.ppt-reader-toolbar span{flex-basis:100%}.ppt-reader-toolbar button{flex:1}}@media(prefers-reduced-motion:reduce){.ppt-portfolio *{scroll-behavior:auto!important;transition:none!important}}
