.ds-shell{position:relative;z-index:1;min-height:100dvh;display:flex;flex-direction:column}.ds-wrap{width:100%;min-width:0;max-width:var(--maxw);margin:0 auto;padding-inline:var(--gutter)}.ds-chrome{position:relative;z-index:1}.ds-chrome--top{border-bottom:1px solid var(--line)}.ds-chrome--bottom{margin-top:auto;border-top:1px solid var(--line)}.ds-chrome__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding-block:var(--space-3)}.ds-chrome__inner--footer{align-items:baseline;padding-block:var(--space-5)}.ds-wordmark{font-family:var(--font-mono);font-size:var(--fs-label);font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color var(--transition)}.ds-wordmark:hover{color:var(--accent)}.ds-nav{display:flex;align-items:center;gap:clamp(.75rem,2vw,1.75rem);flex-wrap:wrap}.ds-nav__link{font-family:var(--font-mono);font-size:var(--fs-label);font-weight:400;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);text-decoration:none;padding-block:.35rem;transition:color var(--transition)}.ds-nav__link:hover{color:var(--accent)}.ds-nav__link:focus-visible{color:var(--accent)}.ds-footer__brand{margin:0;letter-spacing:var(--track-label);text-transform:uppercase}.ds-footer__brand,.ds-footer__link{font-family:var(--font-mono);font-size:var(--fs-small);color:var(--muted)}.ds-footer__link{letter-spacing:.04em;text-decoration:none;border-bottom:1px solid var(--line-strong);padding-bottom:.15rem;transition:color var(--transition),border-color var(--transition)}.ds-footer__link:hover{color:var(--accent);border-bottom-color:var(--accent-line)}.ds-main{flex:1 1 auto;min-width:0;max-width:none;margin:0;padding:0;min-height:0;justify-content:flex-start}.ds-page{padding-block:clamp(3rem,9vh,6rem)}.ds-eyebrow{display:inline-flex;align-items:center;gap:.6em;margin:0;font-family:var(--font-mono);font-size:var(--fs-label);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--accent)}.ds-eyebrow:before{content:"";width:1.75rem;height:1px;background:currentColor;opacity:.65}.ds-h1{margin:var(--space-3) 0 0;font-size:var(--fs-display);line-height:.98;letter-spacing:-.03em;font-weight:700;max-width:32ch}.ds-dek{font-size:var(--fs-lead);line-height:1.65}.ds-dek,.ds-notice{margin:var(--space-4) 0 0;max-width:var(--maxw-text);color:var(--fg-2);text-wrap:pretty}.ds-notice{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:var(--fs-small)}.ds-sample{display:inline-flex;align-items:center;padding:.2rem .5rem;border:1px solid var(--accent-line);border-radius:var(--radius-pill);background:var(--accent-wash);font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-soft);white-space:nowrap}.ds-section-head{max-width:var(--maxw-text);margin-bottom:clamp(2rem,4vw,3.75rem)}.ds-section__title{margin:var(--space-3) 0 0;font-size:var(--fs-h2);line-height:1.08;letter-spacing:-.03em;font-weight:700}.ds-grid{display:grid;grid-template-columns:1fr;grid-gap:var(--space-5);gap:var(--space-5);margin:var(--space-5) 0 0;padding:0;list-style:none}.ds-card{display:block}.ds-card__link{display:block;height:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-decoration:none;color:inherit;overflow:hidden;transition:border-color var(--transition),transform var(--transition)}.ds-card__link:hover{border-color:var(--line-strong);transform:translateY(-2px)}.ds-card__preview-wrap{position:relative;aspect-ratio:4/5;background:var(--surface-2);border-bottom:1px solid var(--line)}.ds-card__preview{display:block;width:100%;height:100%;object-fit:contain}.ds-card__badge{position:absolute;top:var(--space-2);right:var(--space-2)}.ds-card__body{padding:var(--space-3) var(--space-4) var(--space-4)}.ds-card__title{margin:var(--space-1) 0 0;font-size:1.0625rem;line-height:1.3;font-weight:600;color:var(--fg)}.ds-card__price{margin:var(--space-2) 0 0;font-family:var(--font-mono);font-size:var(--fs-small);color:var(--fg-2)}.ds-detail{display:grid;grid-template-columns:1fr;grid-gap:var(--space-6);gap:var(--space-6);margin-top:var(--space-5)}.ds-detail__preview-wrap{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);overflow:hidden}.ds-detail__preview{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain}.ds-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}.ds-tags li{padding:.2rem .55rem;border:1px solid var(--line);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.ds-detail__delivers{margin:var(--space-4) 0 0;font-family:var(--font-mono);font-size:var(--fs-small);color:var(--fg-2)}.ds-tier-list{margin:var(--space-5) 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.ds-tier-row{display:grid;grid-template-columns:2.5rem 1fr;grid-gap:var(--space-3);gap:var(--space-3);align-items:baseline;padding-block:clamp(1.1rem,2.4vw,1.6rem);border-bottom:1px solid var(--line);transition:border-color var(--transition)}.ds-tier-row:hover{border-bottom-color:var(--accent-line)}.ds-tier-row__index{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.18em;color:var(--accent)}.ds-tier-row__title{margin:0;font-size:clamp(1.0625rem,1.9vw,1.375rem);line-height:1.3;letter-spacing:-.015em;font-weight:500;color:var(--fg)}.ds-tier-row__body{margin:var(--space-2) 0 0;font-size:var(--fs-small);line-height:1.7;color:var(--fg-2);text-wrap:pretty}.ds-tier-row__price{margin:var(--space-2) 0 0;font-family:var(--font-mono);font-size:1.0625rem;font-weight:600;color:var(--fg)}.ds-detail__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:clamp(1.75rem,3.5vw,2.5rem)}.ds-detail__actions .ds-link-arrow{margin-top:0}.ds-buy{margin-top:var(--space-5);display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.ds-buy__delivery{margin:var(--space-3) 0 0;font-size:var(--fs-small);color:var(--muted)}.ds-buy__license{margin:var(--space-2) 0 0;font-size:var(--fs-small)}.ds-buy__license a{color:var(--fg-2);text-decoration:none;border-bottom:1px solid var(--line-strong);transition:color var(--transition),border-color var(--transition)}.ds-buy__license a:hover{color:var(--accent);border-bottom-color:var(--accent-line)}.ds-buybtn{display:block;width:100%;padding:.75rem 1.1rem;font:inherit;font-family:var(--font-mono);font-weight:600;font-size:var(--fs-small);letter-spacing:.06em;text-transform:uppercase;color:var(--bg);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);cursor:pointer;transition:background var(--transition),color var(--transition),opacity var(--transition)}.ds-buybtn:hover{background:transparent;color:var(--accent)}.ds-buybtn:disabled{cursor:not-allowed;opacity:.55;border-color:var(--line-strong)}.ds-buybtn:disabled,.ds-buybtn:disabled:hover{background:var(--surface-2);color:var(--muted)}.ds-paypal-slot{margin-top:var(--space-2)}.ds-paypal-status{margin:var(--space-2) 0 0;font-family:var(--font-mono);font-size:var(--fs-small);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.ds-paypal-buttons{display:grid;grid-gap:var(--space-4);gap:var(--space-4);margin-top:var(--space-2)}.ds-paypal-buttons__tier{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.ds-paypal-buttons__tier-label{margin:0;font-family:var(--font-mono);font-size:var(--fs-small);letter-spacing:.04em;text-transform:uppercase;color:var(--fg-2)}.ds-buy__error{margin:var(--space-2) 0 0;font-size:var(--fs-small);color:var(--accent-soft)}.ds-success__actions{margin:var(--space-5) 0 0}.ds-success__download{display:inline-block;width:auto;min-width:14rem;text-decoration:none}.ds-license{margin-top:var(--space-6);display:grid;grid-gap:var(--space-6);gap:var(--space-6);max-width:var(--maxw-text)}.ds-license__tier{padding-top:var(--space-5);border-top:1px solid var(--line)}.ds-license__tier h2{margin:0;font-size:var(--fs-h3);letter-spacing:-.01em;font-weight:600}.ds-license__list{margin:var(--space-3) 0 0;padding:0;list-style:none;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.ds-license__list li{position:relative;padding-left:1.25rem;color:var(--fg-2);text-wrap:pretty}.ds-license__list li:before{content:"";position:absolute;left:0;top:.72em;width:.4rem;height:1px;background:var(--accent)}.ds-id{max-width:56rem}.ds-id__eyebrow,.ds-order__label{margin:0;font-family:var(--font-mono);font-size:var(--fs-label);font-weight:400;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.ds-id__name{margin:var(--space-3) 0 0;font-size:var(--fs-display);line-height:1.02;letter-spacing:-.03em;font-weight:600}.ds-id__role{margin:var(--space-2) 0 0;font-size:var(--fs-lead);color:var(--fg-2)}.ds-id__pitch-label{margin-top:var(--space-5)}.ds-id__pitch{margin:var(--space-3) 0 0;max-width:var(--maxw-text);font-size:clamp(1.1875rem,1.7vw,1.375rem);line-height:1.6;color:var(--fg);text-wrap:pretty}.ds-id__meta{margin:var(--space-4) 0 0;font-size:var(--fs-small);color:var(--muted)}.ds-id__meta,.ds-link-arrow{font-family:var(--font-mono)}.ds-link-arrow{display:inline-flex;align-items:center;gap:.55em;margin:clamp(1.75rem,3.5vw,2.5rem) 0 0;font-size:var(--fs-label);letter-spacing:.14em;text-transform:uppercase;color:var(--fg);text-decoration:none;padding:.85rem 1.45rem;border:1px solid var(--line-strong);border-radius:var(--radius-pill);transition:color var(--transition),border-color var(--transition),background var(--transition)}.ds-link-arrow svg{transition:transform var(--transition)}.ds-link-arrow:hover{color:var(--accent);border-color:var(--accent-line);background:var(--accent-wash)}.ds-link-arrow:hover svg{transform:translate(2px,-2px)}.ds-order{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--line)}.ds-order-list{margin:var(--space-5) 0 0;padding:0;list-style:none;display:grid;grid-gap:var(--space-5);gap:var(--space-5);max-width:56rem}.ds-order-item{display:grid;grid-template-columns:2.5rem 1fr;grid-gap:var(--space-3);gap:var(--space-3);align-items:start}.ds-order-item__index{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.08em;color:var(--accent);padding-top:.15em}.ds-order-item__body{margin:0;max-width:var(--maxw-text);color:var(--fg-2);text-wrap:pretty}.ds-order-item__body strong{color:var(--fg);font-weight:600}.ds-series{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--line)}.ds-series__eyebrow{display:inline-flex;align-items:center;gap:.6em;margin:0;font-family:var(--font-mono);font-size:var(--fs-label);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--accent)}.ds-series__eyebrow:before{content:"";width:1.75rem;height:1px;background:currentColor;opacity:.65}.ds-series__title{margin:var(--space-3) 0 0;font-size:var(--fs-h2);line-height:1.08;letter-spacing:-.03em;font-weight:700}.ds-piece__top{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4) 0}.ds-piece__index{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.18em;color:var(--muted);transition:color var(--transition)}.ds-piece__arrow{color:var(--muted);transition:color var(--transition),transform var(--transition)}.ds-card__link:hover .ds-piece__arrow,.ds-card__link:hover .ds-piece__index{color:var(--accent)}.ds-card__link:hover .ds-piece__arrow{transform:translate(3px,-3px)}.ds-close{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--line)}.ds-close__line{margin:0;font-family:var(--font-mono);font-size:var(--fs-small);letter-spacing:.04em;color:var(--muted)}.ds-close__line a{color:var(--fg-2);text-decoration:none;border-bottom:1px solid var(--line-strong);transition:color var(--transition),border-color var(--transition)}.ds-close__line a:hover{color:var(--accent);border-bottom-color:var(--accent-line)}@media (min-width:640px){.ds-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:56rem){.ds-grid{grid-template-columns:repeat(3,1fr)}.ds-detail{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start}}@media (min-width:90rem){.ds-wrap{max-width:84rem}}