/* Shared showcase: extends, never resets, the five Skillom academy compositions. */
.nx-cases{border-top:1px solid #e2e4e8;background:#f7f8f9;color:#16181b}.nx-case-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:36px}.nx-case-heading h2{font-size:clamp(36px,3.7vw,54px);font-weight:400;letter-spacing:-2px;line-height:1.06}.nx-case-heading em{color:#858b95;font-style:normal}.nx-case-heading p{max-width:560px}.nx-case-disclaimer{font-size:12px!important;line-height:1.65!important;margin-top:18px!important;color:#737983!important}.nx-case-filters{display:flex;gap:24px;align-items:end;justify-content:space-between;padding:22px 0;border-top:1px solid #dfe2e6;border-bottom:1px solid #dfe2e6}.nx-case-tabs{display:flex;flex-wrap:wrap;gap:8px}.nx-case-tabs button{border:1px solid #dce0e5;border-radius:99px;background:transparent;font:inherit;font-size:11px;padding:10px 14px;cursor:pointer}.nx-case-tabs button[aria-pressed=true]{background:#181b20;color:white;border-color:#181b20}.nx-case-age{font-size:10px;line-height:1.5;color:#606875;min-width:157px}.nx-case-age select{display:block;width:100%;margin-top:5px;background:#fff;border:1px solid #dce0e5;border-radius:7px;padding:9px 12px;color:#20242b;font:inherit;font-size:12px;min-height:40px}.nx-case-count{font-size:11px;margin:19px 0!important;color:#747b85;letter-spacing:.3px}.nx-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.nx-case-card{background:#fff;border:1px solid #e1e4e8;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.nx-case-preview{display:block;position:relative;width:100%;aspect-ratio:16/10;border:0;border-bottom:1px solid #e4e6e9;padding:0;overflow:hidden;background:#e9ebee;text-align:left;cursor:pointer}.nx-case-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .35s}.nx-case-preview:hover img{transform:scale(1.025)}.nx-case-format{position:absolute;left:14px;bottom:14px;background:#fffef5f2;color:#2c323b;border:1px solid #d7dbe1;padding:6px 10px;border-radius:99px;font-size:10px;line-height:1.3}.nx-case-open{position:absolute;right:14px;bottom:14px;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;background:#fff;color:#1c2026}.nx-case-copy{padding:24px;display:flex;flex-direction:column;flex:1}.nx-case-kicker{font-size:9px!important;text-transform:uppercase;letter-spacing:1.2px;color:#757d88;margin-bottom:12px!important}.nx-case-copy h3{font-size:25px;font-weight:400;letter-spacing:-.7px;line-height:1.13;margin:0 0 10px}.nx-case-copy h3 button{font:inherit;letter-spacing:inherit;line-height:inherit;border:0;background:none;padding:0;text-align:left;cursor:pointer}.nx-case-hook{font-size:12px!important;color:#333b45!important;margin-bottom:10px!important}.nx-case-purpose{font-size:12px!important;line-height:1.7!important;color:#717985!important}.nx-case-skills{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}.nx-case-skills span{border:1px solid #e3e5e8;background:#fafbfc;border-radius:5px;padding:5px 7px;font-size:9px;line-height:1.3;color:#676f7a}.nx-case-link{display:flex;justify-content:space-between;gap:18px;width:100%;padding:18px 0 0;margin-top:auto;font-size:11px;background:none;border:0;border-top:1px solid #eceef1;cursor:pointer;text-align:left}.nx-case-more{display:flex;justify-content:center;margin-top:30px}.nx-case-more .button{font-size:12px;gap:30px;background:white;border:1px solid #dce0e5;border-radius:99px;padding:15px 24px;cursor:pointer}.nx-case-footnote{max-width:800px;font-size:11px!important;line-height:1.7!important;text-align:center;margin:22px auto 0!important;color:#7b828c}.nx-case-empty{grid-column:1/-1;padding:40px 0}.nx-case-dialog{padding:0;border:1px solid #dce0e5;border-radius:18px;width:min(1120px,calc(100% - 40px));max-width:1120px;max-height:90dvh;background:#fff;color:#20242b;overscroll-behavior:contain}.nx-case-dialog::backdrop{background:#111923b8;backdrop-filter:blur(4px)}body.nx-case-modal-open{overflow:hidden}.nx-case-dialog-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px 26px;background:#fffffff5;border-bottom:1px solid #e5e7eb}.nx-case-dialog-header>span{font-size:10px;letter-spacing:2px;color:#727b87}.nx-case-close{display:grid;place-items:center;width:36px;height:36px;border:1px solid #dce0e5;background:#fff;border-radius:50%;cursor:pointer}.nx-case-detail{padding:34px 40px}.nx-case-detail h2{font-size:clamp(32px,4vw,52px);font-weight:400;line-height:1.08;letter-spacing:-1.5px;margin:0 0 20px}.nx-case-detail h3{font-size:19px;font-weight:400;letter-spacing:-.45px;line-height:1.3;margin:0 0 12px}.nx-case-detail p{font-size:13px;line-height:1.75;color:#6a7380;margin:0}.nx-case-detail .eyebrow{font-size:10px;margin-bottom:16px}.nx-case-detail-lead{max-width:760px;font-size:16px!important}.nx-case-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin:34px 0}.nx-case-path{padding:26px;background:#f6f7f9;border:1px solid #e5e8ec;border-radius:12px}.nx-case-path ol{list-style:none;counter-reset:step;padding:0;margin:20px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.nx-case-path li{counter-increment:step;font-size:12px;line-height:1.7;color:#697481}.nx-case-path li::before{content:'0' counter(step);display:block;color:#9aa2ad;font-size:18px;margin-bottom:12px}.nx-case-path b{display:block;color:#2f3843;font-size:12px;font-weight:500;margin-bottom:8px}.nx-case-path p{font-size:11px}.nx-case-limit{padding:20px 22px;border-left:3px solid #414a57;background:#f4f5f7;border-radius:0 8px 8px 0;margin:24px 0 32px}.nx-case-limit b{display:block;font-size:12px;font-weight:500;margin-bottom:8px}.nx-case-limit p{font-size:12px}.nx-case-viewer-heading{max-width:830px;margin-bottom:18px}.nx-case-viewer-heading p{font-size:11px;margin-top:8px}.nx-case-viewer{border:1px solid #dfe3e9;border-radius:12px;overflow:hidden;background:#e9ebf0;min-height:100px}.nx-case-viewer>p{padding:30px}.nx-case-viewer iframe{display:block;border:0;width:100%;height:740px;background:#e9ebf0}.nx-case-viewer.mobile{max-width:480px;margin:auto}.nx-case-viewer.video{background:#111820}.nx-case-viewer video{width:100%;height:auto;display:block;aspect-ratio:16/9}.nx-case-credits{font-size:11px;line-height:1.7;margin-top:14px;overflow-wrap:anywhere}.nx-case-credits summary{cursor:pointer;font-size:11px}.nx-case-credits p{font-size:11px;margin-top:10px;white-space:pre-wrap}.nx-case-detail-end{display:flex;align-items:center;gap:30px;margin-top:32px;padding-top:24px;border-top:1px solid #e3e6ea}.nx-case-detail-end p{font-size:11px;flex:1}.nx-case-detail-end button{white-space:nowrap;font-size:11px;background:#fff;border:1px solid #dfe3e8;border-radius:99px;padding:14px 20px;cursor:pointer}.nx-cases button:focus-visible,.nx-case-dialog button:focus-visible,.nx-case-age select:focus-visible{outline:2px solid #517ba7;outline-offset:4px}.nx-case-catalog-fallback{padding:24px}
@media(min-width:1100px){.variant-studio .nx-case-card:first-child,.variant-mission .nx-case-card:first-child{grid-column:span 2}.variant-studio .nx-case-card:first-child .nx-case-preview,.variant-mission .nx-case-card:first-child .nx-case-preview{aspect-ratio:32/10}.variant-studio .nx-case-card:first-child .nx-case-preview img,.variant-mission .nx-case-card:first-child .nx-case-preview img{object-position:center}.variant-studio .nx-case-card:first-child .nx-case-copy,.variant-mission .nx-case-card:first-child .nx-case-copy{max-width:650px}.variant-studio .nx-case-grid,.variant-mission .nx-case-grid{align-items:stretch}}
@media(max-width:1000px){.nx-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nx-case-heading{gap:30px}.nx-case-filters{align-items:start}.nx-case-tabs{gap:6px}.nx-case-tabs button{font-size:10px;padding:9px 11px}.nx-case-path ol{gap:15px}.nx-case-detail{padding:28px}}
@media(max-width:640px){.nx-cases{padding-top:46px;padding-bottom:46px}.nx-case-heading{grid-template-columns:1fr;gap:22px;margin-bottom:25px}.nx-case-heading h2{font-size:38px}.nx-case-heading p{font-size:13px}.nx-case-filters{flex-direction:column;gap:18px}.nx-case-age{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px}.nx-case-age select{width:auto;min-width:155px;margin:0}.nx-case-tabs button{font-size:10px;padding:9px 12px;min-height:38px}.nx-case-grid{grid-template-columns:1fr;gap:20px}.nx-case-preview{aspect-ratio:16/10}.nx-case-copy{padding:22px}.nx-case-copy h3{font-size:25px}.nx-case-purpose{font-size:13px!important}.nx-case-footnote{text-align:left;font-size:11px!important}.nx-case-dialog{width:calc(100% - 16px);max-height:94dvh;border-radius:13px}.nx-case-dialog-header{padding:12px 16px}.nx-case-dialog-header>span{font-size:9px;letter-spacing:1.3px}.nx-case-detail{padding:25px 18px}.nx-case-detail h2{font-size:33px;overflow-wrap:anywhere}.nx-case-detail-lead{font-size:14px!important}.nx-case-detail-grid{grid-template-columns:1fr;gap:24px;margin:28px 0}.nx-case-path{padding:20px}.nx-case-path ol{grid-template-columns:1fr;gap:20px}.nx-case-path li::before{float:left;margin:0 14px 30px 0}.nx-case-path li{display:flow-root}.nx-case-path b{margin-bottom:5px}.nx-case-viewer iframe{height:680px}.nx-case-viewer.desktop{overflow:auto}.nx-case-viewer.desktop iframe{width:1000px;height:740px}.nx-case-detail-end{flex-direction:column;align-items:start;gap:18px}.nx-case-detail-end button{white-space:normal}.nx-case-limit{padding:17px}}
@media(prefers-reduced-motion:reduce){.nx-case-preview img{transition:none}}

/* Real application captures share a consistent card viewport. */
.nx-case-screenshot{height:100%;width:100%;padding:12px 12px 42px;background:#e8ecf1;overflow:hidden}
.nx-case-screenshot img{width:100%;height:100%;object-fit:cover;object-position:top center;border-radius:6px;box-shadow:0 3px 14px #24304418;background:#fff}
.nx-case-screenshot-mobile{display:flex;justify-content:center;padding:12px 12px 42px;background:#e8ecf1}
.nx-case-screenshot-mobile img{width:58%;height:100%;object-fit:cover;object-position:top center;border-radius:9px}
.nx-case-preview:hover .nx-case-screenshot img{transform:none}
@media(min-width:1100px){.variant-studio .nx-case-card:first-child .nx-case-screenshot img,.variant-mission .nx-case-card:first-child .nx-case-screenshot img{object-position:top center}.variant-studio .nx-case-card:first-child .nx-case-screenshot-mobile img,.variant-mission .nx-case-card:first-child .nx-case-screenshot-mobile img{width:29%}}

/* Linked project reviews are static safe captures, never private app embeds. */
.nx-case-viewer.preview{background:#f0f2f5;padding:12px}.nx-case-full-preview{display:block;width:100%;height:auto;border-radius:6px}.nx-case-screenshot-preview img{object-position:top center}

/* Uploaded concept boards retain the complete composition. */
.nx-case-screenshot-concept img{object-fit:contain;object-position:center;background:#eef0f5}.nx-case-viewer.concept{background:#f0f2f5;padding:8px}

/* Temporary learner display data is deliberately separate from project authorship. */
.nx-learner{display:flex;align-items:center;gap:12px;min-width:0;padding:0 0 18px;margin-bottom:19px;border-bottom:1px solid #eceef1}
.nx-learner-avatar{display:block;flex:0 0 54px;width:54px;height:54px;object-fit:cover;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #e3e6eb;background:#edf0f4}
.nx-learner-copy{min-width:0;flex:1}
.nx-learner .nx-learner-name{font-size:15px!important;font-weight:550;line-height:1.45!important;color:#222a35!important;margin:0 0 4px!important;overflow-wrap:anywhere}
.nx-learner-name span{font-size:13px;font-weight:400;color:#596474;white-space:nowrap}
.nx-learner .nx-learner-label{font-size:10px!important;line-height:1.55!important;color:#6a7481!important;margin:0!important;max-width:240px}
.nx-learner-detail{padding:18px 20px;border:1px solid #e0e5eb;border-radius:12px;background:#f8f9fb;margin:0 0 25px;gap:16px}
.nx-learner-detail .nx-learner-avatar{width:72px;height:72px;flex-basis:72px}
.nx-learner-detail .nx-learner-name{font-size:19px!important}
.nx-learner-detail .nx-learner-name span{font-size:16px}
.nx-learner-detail .nx-learner-label{font-size:11px!important;max-width:none}
.nx-learner .nx-learner-note{font-size:11px!important;line-height:1.55!important;color:#6a7481!important;margin:5px 0 0!important}
@media(max-width:640px){.nx-learner{gap:12px}.nx-learner-detail{padding:15px;align-items:flex-start}.nx-learner-detail .nx-learner-avatar{width:60px;height:60px;flex-basis:60px}.nx-learner-detail .nx-learner-name{font-size:17px!important}.nx-learner-detail .nx-learner-name span{font-size:14px}}
