.pt-lab{background:var(--paper)}.pt-practice-storage-note{color:#5f4913;text-align:center;background:#fff5d9;border-bottom:1px solid #d6b45f;margin:0;padding:10px 18px;font-size:12px;line-height:1.5}.pt-lab-hero{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:end;gap:clamp(42px,7vw,110px);width:min(1380px,100% - 48px);margin:0 auto;padding:clamp(64px,9vw,130px) 0 clamp(54px,7vw,96px);display:grid}.pt-lab-hero h1{max-width:900px;font:620 clamp(58px, 7.4vw, 108px)/.86 var(--font-display);letter-spacing:-.06em;text-wrap:balance;margin:17px 0 27px}.pt-lab-hero h1 em{color:var(--red);font-weight:480}.pt-lab-hero>div>p:last-child{max-width:720px;color:var(--muted);margin:0;font-size:18px;line-height:1.65}.pt-lab-cta{background:var(--ink);color:#fff;width:fit-content;min-height:54px;box-shadow:4px 4px 0 var(--gold);font:700 11px var(--font-mono);letter-spacing:.05em;text-transform:uppercase;border-radius:9px;justify-content:space-between;align-items:center;gap:38px;margin-top:28px;padding:0 20px;text-decoration:none;display:inline-flex}.pt-lab-cta:hover{color:#fff;box-shadow:6px 6px 0 var(--gold);transform:translate(-1px,-1px)}.pt-lab-hero aside{border:1px solid var(--line);background:#fffdf6ad;grid-template-columns:auto 1fr;gap:17px 15px;padding:28px;display:grid;box-shadow:8px 8px #c79d4533}.pt-lab-hero aside span{background:var(--ink);color:#fff;width:29px;height:29px;font:700 9px var(--font-mono);border-radius:50%;place-items:center;display:grid}.pt-lab-hero aside p{color:var(--muted);margin:2px 0 0;font-size:13px;line-height:1.5}.pt-lab-hero aside b{color:var(--ink)}.pt-lab-library{background:var(--ink);color:#fff;padding:clamp(58px,7vw,100px) max(24px,50vw - 690px)}.pt-lab-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:46px;display:flex}.pt-lab-heading h2{max-width:780px;font:560 clamp(42px, 5.3vw, 74px)/.96 var(--font-display);letter-spacing:-.045em;margin:13px 0 0;scroll-margin-top:86px}.pt-lab-heading>p{color:#ffffff91;max-width:380px;font:600 10px/1.55 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin:0}.pt-scenario-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.pt-scenario-tile{background:var(--card);min-height:500px;color:var(--ink);border:1px solid #ffffff26;border-radius:15px;flex-direction:column;padding:35px 32px 30px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 45px #0000003d}.pt-scenario-tile:after{content:"";pointer-events:none;border:1px solid #16223117;border-radius:9px;position:absolute;inset:9px}.pt-scenario-tile:nth-child(2){transform:translateY(18px)}.pt-scenario-corner{width:42px;color:var(--red);font-family:var(--font-display);flex-direction:column;align-items:center;display:flex}.pt-scenario-corner b{font-size:33px;line-height:.8}.pt-scenario-corner span{font-size:24px}.pt-scenario-deck{letter-spacing:.1em;text-transform:uppercase;color:var(--muted)!important;font:700 9px var(--font-mono)!important;margin:50px 0 12px!important}.pt-scenario-tile h3{font:620 clamp(35px, 3vw, 48px)/.95 var(--font-display);letter-spacing:-.035em;margin:0}.pt-scenario-tile>p{color:var(--muted);margin:18px 0 0;font-size:14px;line-height:1.6}.pt-scenario-tile dl{border-top:1px solid var(--line);gap:32px;margin:auto 0 24px;padding-top:26px;display:flex}.pt-scenario-tile dl div{flex-direction:column;gap:4px;display:flex}.pt-scenario-tile dt{color:var(--muted);font:700 8px var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.pt-scenario-tile dd{font:600 18px var(--font-display);margin:0}.pt-scenario-tile>button{z-index:1;border:1px solid var(--ink);background:var(--ink);color:#fff;min-height:51px;font:700 10px var(--font-mono);letter-spacing:.05em;text-transform:uppercase;border-radius:7px;justify-content:space-between;align-items:center;padding:0 16px;display:flex}.pt-scenario-tile>button:hover{background:var(--red);border-color:var(--red)}.pt-lab-method{text-align:center;width:min(970px,100% - 48px);margin:0 auto;padding:clamp(90px,12vw,170px) 0}.pt-lab-method h2{font:580 clamp(46px, 6.2vw, 80px)/.95 var(--font-display);letter-spacing:-.05em;margin:15px 0 23px}.pt-lab-method>p:last-child{max-width:740px;color:var(--muted);margin:0 auto;font-size:17px;line-height:1.7}.pt-challenge{background:var(--felt-dark);min-height:100vh}.pt-challenge .app-header{color:var(--ink);position:relative}.pt-challenge-meter{background:#ffffff1f;height:4px}.pt-challenge-meter i{background:var(--gold);height:100%;transition:width .28s;display:block}.pt-challenge-shell{grid-template-columns:270px minmax(0,760px);justify-content:center;align-items:start;gap:clamp(38px,6vw,88px);width:min(1260px,100% - 48px);margin:0 auto;padding:clamp(44px,6vw,82px) 0 90px;display:grid}.pt-challenge-rail{color:#ffffffb8}.pt-challenge-rail .eyebrow{color:#e4c678;line-height:1.5}.pt-challenge-rail h2{color:#fff;font:560 40px/.95 var(--font-display);letter-spacing:-.035em;margin:15px 0 32px}.pt-challenge-rail ol{gap:15px;margin:0 0 34px;padding:0;list-style:none;display:grid}.pt-challenge-rail li{color:#ffffff8c;font:700 10px var(--font-mono);letter-spacing:.07em;text-transform:uppercase;grid-template-columns:28px 1fr;align-items:center;gap:11px;display:grid}.pt-challenge-rail li span{border:1px solid #ffffff40;border-radius:50%;place-items:center;width:27px;height:27px;font-size:8px;display:grid}.pt-challenge-rail li.active{color:#fff}.pt-challenge-rail li.active span{border-color:var(--gold);background:var(--gold);color:var(--ink)}.pt-challenge-rail li.done span{color:#fff;border-color:#ffffff73}.pt-challenge-rail>p:last-child{border-top:1px solid #ffffff26;padding-top:24px;font-size:11px;line-height:1.6}.pt-challenge-card{background:var(--card);border-radius:16px;min-height:650px;padding:clamp(34px,5vw,66px);box-shadow:0 28px 80px #00000052}.pt-challenge-card h1{font:600 clamp(48px, 5.3vw, 72px)/.92 var(--font-display);letter-spacing:-.05em;text-wrap:balance;margin:15px 0 24px}.pt-challenge-lede{color:var(--ink)!important;font:480 clamp(21px, 2.25vw, 29px)/1.3 var(--font-display)!important}.pt-challenge-card>p{color:var(--muted);line-height:1.65}.pt-challenge-card .primary-action{margin-top:24px}.pt-challenge-field{border:0;margin:36px 0 0;padding:0}.pt-challenge-field legend{font:700 11px/1.5 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}.pt-challenge-field label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:13px;min-height:65px;margin-bottom:10px;padding:14px 16px;font-size:13px;line-height:1.45;display:flex}.pt-challenge-field label:hover{border-color:#16223173}.pt-challenge-field label.selected{border-color:var(--ink);box-shadow:3px 3px 0 var(--gold)}.pt-challenge-field input{width:17px;height:17px;accent-color:var(--ink);flex:none}.pt-challenge-actions{justify-content:space-between;align-items:center;gap:18px;margin-top:30px;display:flex}.pt-challenge-actions>button:not(.primary-action){min-height:44px;color:var(--muted);font:700 10px var(--font-mono);text-underline-offset:4px;background:0 0;border:0;text-decoration:underline}.pt-reflection{flex-direction:column;gap:10px;margin-top:34px;display:flex}.pt-reflection>span{font:700 10px var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.pt-reflection textarea{resize:vertical;border:1px solid var(--ink);background:#fff;border-radius:8px;padding:18px;font-size:16px;line-height:1.55}.pt-reflection small{color:var(--muted);align-self:end;font-size:10px}.pt-reflection-quote{border-left:3px solid var(--gold);font:480 20px/1.45 var(--font-display);background:#c79d4517;margin:0 0 32px;padding:20px 24px}.pt-debrief-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.pt-debrief-list li{border:1px solid var(--line);background:#fff;border-left-width:4px;border-radius:7px;padding:18px 20px}.pt-debrief-list li.strong{border-left-color:var(--green)}.pt-debrief-list li.mixed{border-left-color:var(--gold)}.pt-debrief-list li.missed{border-left-color:var(--red)}.pt-debrief-list li>div{justify-content:space-between;gap:12px;display:flex}.pt-debrief-list li span,.pt-debrief-list li b{font:700 9px var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.pt-debrief-list li p{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.55}.pt-debrief-list li p strong{color:var(--ink)}.pt-source-note{border:1px solid var(--line);color:var(--muted);border-radius:7px;margin-top:20px;padding:16px 18px;font-size:11px;line-height:1.55}.pt-source-note summary{color:var(--ink);cursor:pointer;font:700 10px var(--font-mono);text-transform:uppercase}@media (width<=940px){.pt-lab-hero{grid-template-columns:1fr}.pt-lab-hero aside{max-width:620px}.pt-lab-hero aside span,.pt-scenario-deck,.pt-scenario-tile dt{font-size:10px}.pt-scenario-deck{font-size:10px!important}.pt-scenario-grid{grid-template-columns:1fr}.pt-scenario-tile{min-height:410px}.pt-scenario-tile:nth-child(2){transform:none}.pt-challenge-shell{grid-template-columns:1fr}.pt-challenge-rail{grid-template-columns:1fr auto;gap:20px;display:grid}.pt-challenge-rail h2{margin-bottom:0}.pt-challenge-rail ol{grid-column:1/-1;grid-template-columns:repeat(5,1fr)}.pt-challenge-rail>p:last-child{grid-column:1/-1}}@media (width<=680px){.pt-lab-hero,.pt-lab-method,.pt-challenge-shell{width:min(100% - 28px,100%)}.pt-lab-hero{padding-top:52px}.pt-lab-hero h1{font-size:clamp(52px,16vw,76px)}.pt-lab-cta{width:100%}.pt-lab-heading{flex-direction:column;align-items:start}.pt-lab-library{padding-left:14px;padding-right:14px}.pt-scenario-tile{min-height:430px;padding:29px 24px 25px}.pt-challenge-shell{gap:24px;padding-top:30px}.pt-challenge-rail{display:block}.pt-challenge-rail h2{margin-bottom:24px}.pt-challenge-rail ol{padding-bottom:8px;display:flex;overflow-x:auto}.pt-challenge-rail li{flex-direction:column;align-items:start;gap:7px;min-width:82px;display:flex}.pt-challenge-rail>p:last-child{display:none}.pt-challenge-card{min-height:0;padding:30px 22px}.pt-challenge-card h1{font-size:47px}.pt-challenge-actions{flex-direction:column-reverse;align-items:stretch}.pt-challenge-actions .primary-action{width:100%;margin-top:0}}@media (prefers-reduced-motion:reduce){.pt-challenge-meter i{transition:none}}
