/* Zoho WorkDrive page only. Loaded via `extra: crm, p-workdrive`. Every class is scoped .pxd2- */
.pxd2-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.pxd2-ic { width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.pxd2-ic--sm { width: 13px; height: 13px; }
.pxd2-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* shared bits: avatars, file-type tiles, permission chips */
.pxd2-av { display: inline-grid; place-items: center; width: 26px; height: 26px; flex: none; border-radius: 50%; background: var(--a, #226DB4); color: #fff; font: 700 10px/1 var(--f-display); font-style: normal; border: 2px solid #fff; }
.pxd2-av--ext { background: #E2E8F0; color: #475569; }
.pxd2-ft { display: inline-grid; place-items: center; width: 30px; height: 34px; flex: none; border-radius: 6px 10px 6px 6px; background: #226DB4; color: #fff; font: 800 10px/1 var(--f-display); font-style: normal; letter-spacing: .02em; }
.pxd2-ft--doc { background: #226DB4; } .pxd2-ft--sheet { background: #16A34A; } .pxd2-ft--show { background: #EA580C; }
.pxd2-ft--pdf { background: #DC2626; font-size: 8.5px; } .pxd2-ft--img { background: #7C3AED; font-size: 8.5px; }
.pxd2-perm { display: inline-flex; align-items: center; gap: 4px; padding: 4px 9px; border-radius: 999px; font: 700 11px/1.1 var(--f-body); font-style: normal; white-space: nowrap; }
.pxd2-perm--edit { background: #E4EEF8; color: #1B5A96; }
.pxd2-perm--com { background: #F1E9FE; color: #6D28D9; }
.pxd2-perm--view { background: #E6F4EE; color: #0F7A4B; }
.pxd2-perm--link { background: #FFF3DE; color: #9A5B00; }

/* ================= hero: file tree + team folders ================= */
.pxd2-hero .pxd2-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); align-items: center; }
.pxd2-hero .pg-h1 { max-width: 18ch; }
.pxd2-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; padding: 0; list-style: none; max-width: 600px; }
.pxd2-chips li { display: inline-flex; align-items: center; gap: 8px; padding: 8px 13px 8px 9px; border-radius: 10px 10px 10px 4px; background: #fff; border: 1px solid #D3E1F0; box-shadow: 0 8px 18px -14px rgba(8,34,56,.5); font: 600 13.5px/1.25 var(--f-body); color: #082238; }
.pxd2-chips .pxd2-ic { width: 22px; height: 22px; padding: 4px; border-radius: 6px; background: #FFF3DE; color: #C27A00; box-sizing: border-box; }

.pxd2-fs { position: relative; margin: 0; padding: 0; perspective: 1400px; }
.pxd2-fs__win { position: relative; border-radius: 22px; background: #fff; border: 1px solid #E2E8F0; box-shadow: 0 60px 100px -50px rgba(8,34,56,.55); overflow: hidden; will-change: transform; transform-style: preserve-3d; }
.pxd2-fs__bar { display: flex; align-items: center; gap: 6px; padding: 10px 14px; background: #F3F7F9; border-bottom: 1px solid #E2E8F0; }
.pxd2-fs__bar > i { width: 9px; height: 9px; border-radius: 50%; background: #CBD5E1; }
.pxd2-fs__bar > i:first-child { background: #F87171; } .pxd2-fs__bar > i:nth-child(2) { background: #FBBF24; } .pxd2-fs__bar > i:nth-child(3) { background: #34D399; }
.pxd2-fs__bar span { display: inline-flex; align-items: center; gap: 6px; margin-left: 10px; font: 700 12.5px/1 var(--f-display); color: #082238; }
.pxd2-fs__bar em { margin-left: auto; padding: 4px 9px; border-radius: 999px; background: #fff; border: 1px solid #E2E8F0; font: 600 11px/1 var(--f-body); font-style: normal; color: #64748B; }
.pxd2-fs__body { display: grid; grid-template-columns: 188px minmax(0, 1fr); min-height: 420px; }
.pxd2-fs__tree { padding: 14px 10px; background: #F7FAFC; border-right: 1px solid #E8EEF3; }
.pxd2-fs__lbl { margin: 4px 8px 8px; font: 700 10px/1 var(--f-body); letter-spacing: .1em; text-transform: uppercase; color: #94A3B8; }
.pxd2-fs__lbl:not(:first-child) { margin-top: 18px; }
.pxd2-fs__tree ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 2px; }
.pxd2-fs__tree li { display: flex; flex-wrap: wrap; align-items: center; padding: 7px 8px; border-radius: 8px; font: 600 12.5px/1.2 var(--f-body); color: #334155; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pxd2-fs__tree li > .pxd2-ic { display: inline-block; width: 15px; height: 15px; margin-right: 7px; color: var(--c, #226DB4); fill: color-mix(in srgb, var(--c, #226DB4) 22%, transparent); }
.pxd2-fs__tree li > .pxd2-ic--sm { width: 11px; height: 11px; margin: 0 0 0 4px; fill: none; color: #94A3B8; }
.pxd2-fs__tree li ul { flex-basis: 100%; margin: 4px 0 2px 7px; padding-left: 10px; border-left: 1.5px dashed #D3E1F0; }
.pxd2-fs__tree li li { display: block; padding: 5px 8px; font-weight: 500; color: #475569; }
.pxd2-fs__tree li li.is-on { background: #E4EEF8; color: #1B5A96; font-weight: 700; }
.pxd2-fs__main { display: flex; flex-direction: column; min-width: 0; padding: 14px 16px 16px; }
.pxd2-fs__path { display: flex; align-items: center; gap: 4px; margin: 0 0 10px; font: 500 12px/1.2 var(--f-body); color: #64748B; }
.pxd2-fs__path b { font: 700 14px/1.2 var(--f-display); color: #082238; }
.pxd2-fs__members { display: flex; align-items: center; margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px solid #EDF2F6; }
.pxd2-fs__members .pxd2-av + .pxd2-av { margin-left: -7px; }
.pxd2-fs__members em { margin-left: 8px; font: 500 12px/1 var(--f-body); font-style: normal; color: #64748B; }
.pxd2-fs__files { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.pxd2-fs__files li { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 12px; border: 1px solid #EDF2F6; background: #fff; transition: opacity .5s, transform .5s cubic-bezier(.2,.7,.1,1), border-color .3s, box-shadow .3s; }
.pxd2-fs__files li p { margin: 0; min-width: 0; }
.pxd2-fs__files li b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 600 13px/1.25 var(--f-body); color: #082238; }
.pxd2-fs__files li p span { font: 500 11.5px/1.3 var(--f-body); color: #94A3B8; }
.pxd2-fs__files li.is-hot { border-color: #A9CBEA; box-shadow: 0 10px 22px -16px rgba(34,109,180,.7); }
.pxd2-fs__files li .pxd2-perm { transition: transform .35s cubic-bezier(.3,1.6,.5,1); }
.pxd2-fs__files li.is-hot .pxd2-perm { transform: scale(1.08); }
.pxd2-fs.is-anim .pxd2-fs__files li:not(.is-in) { opacity: 0; transform: translateX(14px); }
.pxd2-fs__crm { display: flex; align-items: center; gap: 8px; margin-top: auto; padding: 10px 12px; border-radius: 12px; background: #F3F7F9; font: 500 12px/1.3 var(--f-body); color: #475569; }
.pxd2-fs__crm b { color: #082238; }
.pxd2-fs__main > .pxd2-fs__files { margin-bottom: 14px; }
.pxd2-fs__float { position: absolute; z-index: 4; display: inline-flex; align-items: center; gap: 7px; padding: 9px 13px; border-radius: 12px; background: #082238; color: #fff; font: 600 12.5px/1 var(--f-body); box-shadow: 0 18px 30px -16px rgba(8,34,56,.7); white-space: nowrap; }
.pxd2-fs__float .pxd2-ic { width: 15px; height: 15px; color: #FFB81C; }
.pxd2-fs__float--a { right: -14px; top: 70px; }
.pxd2-fs__float--b { left: -22px; bottom: 60px; background: #fff; color: #082238; border: 1px solid #E2E8F0; }
.pxd2-fs__float--b .pxd2-ic { color: #C27A00; }

/* ================= 01. edges: folder-tab bento ================= */
.pxd2-edges { position: relative; background: linear-gradient(180deg, #fff, #F3F7F9); overflow-x: clip; }
.pxd2-edges__head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 64px); align-items: end; }
.pxd2-edges__head .pg-answer { margin: 0; }
.pxd2-bento { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px 18px; margin: 56px 0 0; padding: 0; list-style: none; }
.pxd2-tab { position: relative; display: flex; flex-direction: column; gap: 16px; padding: 20px 22px 24px; border-radius: 0 18px 18px 18px; background: #fff; border: 1px solid #E2E8F0; box-shadow: 0 24px 40px -34px rgba(8,34,56,.45); transition: transform .3s cubic-bezier(.2,.7,.1,1), box-shadow .3s, border-color .3s; }
.pxd2-tab::before { content: ""; position: absolute; left: -1px; top: -15px; width: 42%; max-width: 170px; height: 16px; border-radius: 10px 14px 0 0; background: #fff; border: 1px solid #E2E8F0; border-bottom: 0; }
.pxd2-tab::after { content: ""; position: absolute; left: 14px; top: -7px; width: 28px; height: 4px; border-radius: 4px; background: var(--c); }
.pxd2-tab:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--c) 35%, #E2E8F0); box-shadow: 0 34px 50px -30px rgba(8,34,56,.45); }
.pxd2-tab--big { grid-column: span 2; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: stretch; gap: 28px; padding: 30px; background: linear-gradient(160deg, #fff 55%, color-mix(in srgb, var(--c) 7%, #fff)); }
.pxd2-tab--wide { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); align-items: center; gap: 28px; }
.pxd2-tab--wide .pxd2-tab__tx p:not(.pxd2-tab__n) { max-width: 70ch; }
.pxd2-tab__n { margin: 0 0 6px; font: 700 11.5px/1 var(--f-display); letter-spacing: .08em; text-transform: uppercase; color: var(--c); }
.pxd2-tab h3 { margin: 0; font: 700 clamp(18px, 1rem + .35vw, 21px)/1.25 var(--f-display); letter-spacing: -.01em; color: #082238; }
.pxd2-tab--big h3 { font-size: clamp(22px, 1.1rem + .8vw, 28px); }
.pxd2-tab__tx p:not(.pxd2-tab__n) { margin: 8px 0 0; font-size: 15.5px; line-height: 1.6; color: #334155; }
.pxd2-tab__tx p.pxd2-tab__vs { display: inline-block; margin-top: 12px; padding: 4px 10px; border-radius: 999px; background: #F3F7F9; font: 500 12.5px/1.35 var(--f-body); color: #64748B; }
.pxd2-tab__mv { display: grid; place-items: center; min-height: 108px; padding: 12px; border-radius: 14px; background: color-mix(in srgb, var(--c) 8%, #fff); border: 1px solid color-mix(in srgb, var(--c) 18%, #fff); overflow: hidden; }
.pxd2-mv-roles { display: flex; flex-direction: column; justify-content: center; padding: 22px; }
.pxd2-tab--big .pxd2-tab__tx { align-self: center; }
.pxd2-mv-roles > p { display: flex; align-items: center; gap: 7px; margin: 0 0 8px; font: 700 13.5px/1 var(--f-display); color: #082238; }
.pxd2-mv-roles > p:not(:first-child) { margin-top: 16px; }
.pxd2-mv-roles > p .pxd2-ic { color: #C27A00; fill: #FFE7B5; }
.pxd2-mv-roles ul { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.pxd2-mv-roles li { display: flex; align-items: center; gap: 9px; padding: 7px 10px; border-radius: 10px; background: #fff; border: 1px solid #E2E8F0; font: 600 13px/1 var(--f-body); color: #334155; }
.pxd2-mv-roles li em { margin-left: auto; }
.pxd2-mv-roles li .pxd2-av { border: 0; }
.pxd2-mv-ver { position: relative; display: flex; align-items: center; justify-content: center; gap: 0; }
.pxd2-mv-ver i, .pxd2-mv-ver b { display: grid; place-items: center; width: 44px; height: 54px; margin-left: -14px; border-radius: 6px 12px 6px 6px; background: #fff; border: 1px solid #F3D9A8; box-shadow: 0 8px 14px -10px rgba(8,34,56,.45); font: 800 12px/1 var(--f-display); font-style: normal; color: #9A5B00; animation: pxd2Fan 4s cubic-bezier(.3,1.3,.5,1) infinite; animation-delay: calc(var(--i, 0) * .12s); }
.pxd2-mv-ver i:nth-child(1) { --i: 0; } .pxd2-mv-ver i:nth-child(2) { --i: 1; } .pxd2-mv-ver i:nth-child(3) { --i: 2; } .pxd2-mv-ver i:nth-child(4) { --i: 3; }
.pxd2-mv-ver b { --i: 4; background: #F2A93B; border-color: #F2A93B; color: #fff; font-size: 15px; }
@keyframes pxd2Fan { 0%, 12% { transform: translateX(0) rotate(0); } 35%, 75% { transform: translateX(calc(var(--i) * 4px)) rotate(calc((var(--i) - 2) * 5deg)); } 100% { transform: none; } }
.pxd2-mv-pool { gap: 8px; }
.pxd2-mv-pool span { display: flex; align-items: flex-end; gap: 6px; height: 54px; }
.pxd2-mv-pool i { width: 16px; height: var(--h); border-radius: 4px; background: linear-gradient(180deg, #34C3B4, #0D9488); transform-origin: bottom; animation: pxd2Grow 3.2s ease-in-out infinite alternate; }
.pxd2-mv-pool i:nth-child(2) { animation-delay: .3s; } .pxd2-mv-pool i:nth-child(3) { animation-delay: .6s; } .pxd2-mv-pool i:nth-child(4) { animation-delay: .9s; }
@keyframes pxd2Grow { from { transform: scaleY(.55); } to { transform: scaleY(1); } }
.pxd2-mv-pool b { padding: 4px 10px; border-radius: 999px; background: #fff; border: 1px solid #BFE6DF; font: 700 11.5px/1.2 var(--f-body); color: #0B6B62; }
.pxd2-mv-office { grid-auto-flow: column; gap: 8px; }
.pxd2-mv-office .pxd2-ft { animation: pxd2Bob 3s ease-in-out infinite; }
.pxd2-mv-office .pxd2-ft:nth-child(2) { animation-delay: .25s; } .pxd2-mv-office .pxd2-ft:nth-child(3) { animation-delay: .5s; }
@keyframes pxd2Bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
.pxd2-mv-office span { display: inline-flex; align-items: center; gap: 5px; margin-left: 6px; padding: 6px 9px; border-radius: 999px; background: #fff; border: 1px solid #DCCCF8; font: 700 11px/1 var(--f-body); color: #6D28D9; }
.pxd2-mv-office span .pxd2-ic { width: 13px; height: 13px; animation: pxd2Spin 4s linear infinite; }
@keyframes pxd2Spin { to { transform: rotate(360deg); } }
.pxd2-mv-dlp { display: flex; flex-wrap: wrap; align-content: center; justify-content: center; gap: 6px; }
.pxd2-label { display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px; border-radius: 6px; background: #E11D48; color: #fff; font: 700 11.5px/1 var(--f-body); }
.pxd2-label .pxd2-ic { width: 13px; height: 13px; }
.pxd2-mv-dlp s { padding: 5px 9px; border-radius: 999px; background: #fff; border: 1px solid #F7C7D3; font: 600 11px/1 var(--f-body); color: #9F1239; text-decoration-color: #E11D48; text-decoration-thickness: 2px; }
.pxd2-mv-zia { grid-template-columns: auto 1fr; gap: 10px; align-items: start; justify-items: start; }
.pxd2-mv-zia span { padding: 9px 11px; border-radius: 4px 12px 12px 12px; background: #fff; border: 1px solid #BEE6F4; font: 500 12px/1.4 var(--f-body); color: #334155; }
.pxd2-mv-zia b { display: block; margin-bottom: 2px; font: 700 10.5px/1.2 var(--f-body); letter-spacing: .06em; text-transform: uppercase; color: #0284C7; }

/* ================= 02. version history: stacked versions ================= */
.pxd2-ver { background: #fff; overflow-x: clip; }
.pxd2-ver__stage { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
.pxd2-ver__list { display: grid; gap: 2px; margin: 22px 0 0; padding: 0; list-style: none; position: relative; }
.pxd2-ver__list::before { content: ""; position: absolute; left: 22px; top: 18px; bottom: 18px; width: 2px; background: #E2E8F0; }
.pxd2-ver__list button { position: relative; display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; align-items: center; gap: 12px; width: 100%; padding: 6px 12px 6px 0; border: 0; border-radius: 12px; background: none; text-align: left; cursor: pointer; font: inherit; transition: background .25s; }
.pxd2-ver__list button:hover { background: #F3F7F9; }
.pxd2-ver__list button:focus-visible { outline: 2px solid #00A3D9; outline-offset: 2px; }
.pxd2-ver__list b { position: relative; z-index: 1; display: grid; place-items: center; width: 44px; height: 30px; border-radius: 8px; background: #fff; border: 1.5px solid #D3E1F0; font: 800 12.5px/1 var(--f-display); color: #64748B; transition: background .3s, color .3s, border-color .3s; }
.pxd2-ver__list span { font: 600 15px/1.3 var(--f-body); color: #475569; transition: color .3s; }
.pxd2-ver__list time { font: 500 12.5px/1 var(--f-body); color: #94A3B8; white-space: nowrap; }
.pxd2-ver__list button.is-past b { border-color: #F2A93B; color: #9A5B00; }
.pxd2-ver__list button[aria-pressed="true"] b { background: #F2A93B; border-color: #F2A93B; color: #fff; }
.pxd2-ver__list button[aria-pressed="true"] span { color: #082238; font-weight: 700; }
.pxd2-ver__deck { position: relative; padding: 22px; border-radius: 26px; background: linear-gradient(160deg, #F3F7F9, #EAF2F8); border: 1px solid #E2E8F0; }
.pxd2-ver__file { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0 0 52px; }
.pxd2-ver__file b { font: 700 15px/1.2 var(--f-display); color: #082238; }
.pxd2-ver__file span { flex-basis: 100%; order: 3; padding-left: 40px; font: 500 12px/1.2 var(--f-body); color: #64748B; }
.pxd2-ver__file em { margin-left: auto; padding: 4px 9px; border-radius: 999px; background: #fff; border: 1px solid #E2E8F0; font: 600 11px/1 var(--f-body); font-style: normal; color: #64748B; }
.pxd2-ver__cards { position: relative; display: grid; min-height: 330px; }
.pxd2-vc { grid-area: 1 / 1; align-self: start; display: flex; flex-direction: column; min-height: 290px; border-radius: 18px; background: #fff; border: 1px solid #E2E8F0; border-top: 4px solid var(--a); box-shadow: 0 30px 50px -36px rgba(8,34,56,.55); transform-origin: 50% 0; transition: transform .6s cubic-bezier(.2,.7,.1,1), opacity .5s, filter .5s; }
.pxd2-vc.is-under { transform: translateY(calc(var(--d) * -12px)) scale(calc(1 - var(--d) * .045)); filter: saturate(.6); }
.pxd2-vc.is-under > * { opacity: .35; }
.pxd2-vc.is-gone { opacity: 0; transform: translateY(26px) scale(1.02); pointer-events: none; }
.pxd2-vc.is-hide { opacity: 0; }
.pxd2-vc header { display: flex; align-items: center; gap: 9px; padding: 14px 16px; border-bottom: 1px solid #EDF2F6; transition: opacity .4s; }
.pxd2-vc header > b { padding: 4px 8px; border-radius: 6px; background: color-mix(in srgb, var(--a) 14%, #fff); font: 800 12px/1 var(--f-display); color: var(--a); }
.pxd2-vc header p { margin: 0; font: 700 13.5px/1.2 var(--f-display); color: #082238; }
.pxd2-vc header small { display: block; font: 500 11.5px/1.3 var(--f-body); color: #64748B; }
.pxd2-vc header time { margin-left: auto; font: 500 12px/1 var(--f-body); color: #94A3B8; white-space: nowrap; }
.pxd2-vc__doc { flex: 1; padding: 16px 18px; transition: opacity .4s; }
.pxd2-vc__doc h4 { margin: 0 0 12px; font: 700 15px/1.3 var(--f-display); color: #082238; }
.pxd2-ln { height: 8px; margin: 0 0 9px; border-radius: 4px; background: #EDF2F6; }
.pxd2-ln--s { width: 62%; }
p.pxd2-ln--hl { height: auto; padding: 7px 10px; background: #FFF3DE; font: 600 13px/1.3 var(--f-body); color: #7A4A00; }
.pxd2-vc__doc table { width: 100%; border-collapse: collapse; font: 500 13px/1.3 var(--f-body); color: #334155; }
.pxd2-vc__doc td { padding: 7px 8px; border-bottom: 1px solid #EDF2F6; }
.pxd2-vc__doc td + td { text-align: right; font-variant-numeric: tabular-nums; font-weight: 600; color: #082238; }
.pxd2-vc__doc tr.pxd2-ln--hl td { background: #FFF3DE; font-weight: 700; color: #7A4A00; border-bottom: 0; }
.pxd2-cmt { margin: 0 0 10px; padding: 9px 11px; border-radius: 4px 12px 12px 12px; background: #F1E9FE; font: 500 13px/1.45 var(--f-body); color: #4C1D95; }
.pxd2-cmt b { margin-right: 4px; }
.pxd2-cmt--bad { background: #FDE7EC; color: #9F1239; }
.pxd2-restore, .pxd2-final, .pxd2-sign { display: flex; align-items: center; gap: 8px; margin: 8px 0 0; padding: 9px 11px; border-radius: 10px; font: 600 13px/1.35 var(--f-body); }
.pxd2-restore { background: #E6F4EE; color: #0F7A4B; }
.pxd2-final { background: #E6F4EE; color: #0F7A4B; }
.pxd2-sign { background: #F3F7F9; color: #334155; }
.pxd2-vc__opts { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.pxd2-vc__opts li { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 10px; background: #FFF8EB; font: 600 13px/1.2 var(--f-body); color: #7A4A00; }
.pxd2-vc footer { display: flex; align-items: flex-start; gap: 8px; padding: 12px 16px; border-top: 1px solid #EDF2F6; background: #FAFCFD; border-radius: 0 0 18px 18px; font: 500 12.5px/1.45 var(--f-body); color: #475569; transition: opacity .4s; }
.pxd2-vc footer .pxd2-ic { width: 16px; height: 16px; margin-top: 1px; color: var(--a); }

/* ================= 03. sharing permission picker (dark band) ================= */
.pxd2-share__box { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(20px, 3vw, 36px); margin-top: 40px; }
.pxd2-share__in { display: grid; gap: 18px; align-content: start; }
.pxd2-share__f { margin: 0; padding: 18px; border-radius: 18px; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.05); min-width: 0; }
.pxd2-share__f[hidden] { display: none; }
.pxd2-share__f legend { float: left; width: 100%; margin: 0 0 12px; padding: 0; font: 700 15px/1.3 var(--f-display); color: #fff; }
.pxd2-share__f legend small { margin-left: 6px; padding: 2px 7px; border-radius: 999px; background: rgba(255,184,28,.18); font: 700 10.5px/1.4 var(--f-body); letter-spacing: .04em; text-transform: uppercase; color: #FFD27A; vertical-align: 2px; }
.pxd2-seg, .pxd2-tgl { clear: both; display: flex; flex-wrap: wrap; gap: 8px; }
.pxd2-seg--4 label { flex: 1 1 0; }
.pxd2-seg label, .pxd2-tgl label { position: relative; display: block; cursor: pointer; }
.pxd2-seg input, .pxd2-tgl input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pxd2-seg span, .pxd2-tgl span { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 9px 14px; border-radius: 12px; border: 1.5px solid rgba(255,255,255,.18); background: rgba(6,26,46,.35); font: 600 14px/1.2 var(--f-body); color: #D6E4EF; text-align: center; transition: background .2s, border-color .2s, color .2s; }
.pxd2-seg span .pxd2-ic, .pxd2-tgl span .pxd2-ic { width: 16px; height: 16px; }
.pxd2-seg label:hover span, .pxd2-tgl label:hover span { border-color: rgba(95,211,243,.6); }
.pxd2-seg input:checked + span { background: #fff; border-color: #fff; color: #082238; }
.pxd2-tgl input:checked + span { background: rgba(95,211,243,.16); border-color: #5FD3F3; color: #fff; }
.pxd2-tgl input:checked + span::before { content: "✓"; font-weight: 800; color: #5FD3F3; }
.pxd2-tgl input[data-share-conf]:checked + span { background: rgba(225,29,72,.22); border-color: #FB7185; }
.pxd2-tgl input[data-share-conf]:checked + span::before { color: #FB7185; }
.pxd2-seg input:focus-visible + span, .pxd2-tgl input:focus-visible + span { outline: 2px solid #FFB81C; outline-offset: 2px; }
.pxd2-seg input:disabled + span { opacity: .35; cursor: not-allowed; text-decoration: line-through; }
.pxd2-share__out { position: relative; }
.pxd2-share__card { position: sticky; top: 110px; padding: 22px; border-radius: 22px; background: #fff; color: #334155; box-shadow: 0 50px 80px -40px rgba(0,0,0,.6); }
.pxd2-share__top { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; padding-bottom: 14px; border-bottom: 1px solid #EDF2F6; }
.pxd2-share__top b { font: 700 15px/1.2 var(--f-display); color: #082238; }
.pxd2-share__top em { margin-left: auto; padding: 4px 9px; border-radius: 999px; background: #F3F7F9; font: 600 11px/1 var(--f-body); font-style: normal; color: #64748B; }
.pxd2-share__who { margin: 0 0 12px; font: 500 15px/1.45 var(--f-body); color: #334155; }
.pxd2-share__who b { color: #082238; }
.pxd2-can { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.pxd2-can li { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 10px; background: #F3F7F9; font: 600 14px/1.3 var(--f-body); color: #082238; transition: background .3s, color .3s; }
.pxd2-can li .pxd2-ic { width: 18px; height: 18px; padding: 3px; border-radius: 50%; box-sizing: border-box; background: #DDF4E7; color: #0F7A4B; stroke-width: 2.6; }
.pxd2-can li.is-no { background: #fff; border: 1px dashed #E2E8F0; color: #94A3B8; font-weight: 500; }
.pxd2-can li.is-no .pxd2-ic { background: #F1F5F9; color: #94A3B8; }
.pxd2-can li.is-flip { animation: pxd2Flip .45s cubic-bezier(.2,.7,.1,1); }
@keyframes pxd2Flip { from { transform: translateX(-8px); opacity: .3; } to { transform: none; opacity: 1; } }
.pxd2-meter { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; margin-top: 16px; font: 600 12.5px/1 var(--f-body); color: #64748B; }
.pxd2-meter i { height: 8px; border-radius: 999px; background: #EDF2F6; overflow: hidden; }
.pxd2-meter i b { display: block; height: 100%; width: 20%; border-radius: inherit; background: #16A34A; transition: width .5s cubic-bezier(.2,.7,.1,1), background .5s; }
.pxd2-meter em { min-width: 58px; text-align: right; font-style: normal; font-weight: 700; color: #082238; }
.pxd2-share__tip { margin: 14px 0 0; padding: 11px 13px; border-radius: 12px; background: #FFF8EB; font: 500 13.5px/1.5 var(--f-body); color: #7A4A00; }
.pxd2-share__note { margin: 22px 0 0; max-width: 80ch; font: 400 14px/1.6 var(--f-body); color: #9FC0D8; }

/* ================= pricing extras ================= */
.pxd2-adv__note { margin: 16px 0 0; padding: 12px 14px; border-radius: 12px; background: #F3F7F9; font: 500 14.5px/1.55 var(--f-body); color: #475569; max-width: 52ch; }
.crm-calc__out .pxd2-store { display: grid; gap: 8px; padding: 14px 16px; border-radius: 14px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.1); }
.crm-calc__out .pxd2-store p b { margin: 8px 0 0; font-size: 30px; }
.crm-calc__out .pxd2-store > i { display: block; height: 8px; border-radius: 999px; background: rgba(255,255,255,.1); overflow: hidden; }
.crm-calc__out .pxd2-store > i b { display: block; margin: 0; height: 100%; width: 10%; border-radius: inherit; background: linear-gradient(90deg, #00B2A9, #5FD3F3); transition: width .5s cubic-bezier(.2,.7,.1,1); }
.crm-calc__out .pxd2-store > span { font: 500 13px/1.45 var(--f-body); color: #BFD3E2; }

/* ================= responsive ================= */
@media (max-width: 1180px) {
  .pxd2-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pxd2-tab--big { grid-column: 1 / -1; }
  .pxd2-tab--wide { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); }
}
@media (max-width: 980px) {
  .pxd2-hero .pxd2-hero__grid { grid-template-columns: 1fr; }
  .pxd2-fs { max-width: 640px; margin-top: 18px; }
  .pxd2-edges__head { grid-template-columns: 1fr; }
  .pxd2-ver__stage { grid-template-columns: 1fr; }
  .pxd2-share__box { grid-template-columns: 1fr; }
  .pxd2-share__card { position: static; }
}
@media (max-width: 640px) {
  .pxd2-fs__body { grid-template-columns: 1fr; min-height: 0; }
  .pxd2-fs__tree { display: none; }
  .pxd2-fs__float--a { right: 6px; top: -14px; }
  .pxd2-fs__float--b { left: 6px; bottom: -16px; }
  .pxd2-fs__files li { grid-template-columns: 30px minmax(0, 1fr); }
  .pxd2-fs__files li > .pxd2-perm { grid-column: 2; justify-self: start; }
  .pxd2-bento { grid-template-columns: 1fr; gap: 30px; }
  .pxd2-tab--big, .pxd2-tab--wide { grid-template-columns: 1fr; padding: 22px; }
  .pxd2-ver__list time { display: none; }
  .pxd2-ver__deck { padding: 14px; }
  .pxd2-ver__cards { min-height: 0; }
  .pxd2-vc header { flex-wrap: wrap; }
  .pxd2-seg--4 label { flex: 1 1 40%; }
  .pxd2-seg label { flex: 1 1 100%; }
  .pxd2-seg--4 label { flex-basis: 40%; }
}
@media (prefers-reduced-motion: reduce) {
  .pxd2-mv-ver i, .pxd2-mv-ver b, .pxd2-mv-pool i, .pxd2-mv-office .pxd2-ft, .pxd2-mv-office span .pxd2-ic, .pxd2-can li { animation: none !important; }
  .pxd2-fs__files li, .pxd2-vc, .pxd2-vc > *, .pxd2-tab, .pxd2-meter i b, .crm-calc__out .pxd2-store > i b { transition: none !important; }
}
