.tp-hero{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:32px;align-items:center;margin:50px 0 20px;padding:36px 28px;border:1px solid var(--rule);border-radius:14px;background:var(--paper);overflow:hidden}.tp-hero .side{display:flex;min-width:0;flex-direction:column;gap:8px}.tp-hero .side.left{text-align:right}.tp-hero .label{color:var(--ink-faint);font-family:var(--display);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}.tp-hero .text{font-family:var(--mono);font-size:.95rem;color:var(--ink)}.tp-hero .text.big{font-family:var(--display);font-size:1.35rem;font-weight:500}.dial{position:relative;width:220px;height:220px;margin:0 auto;border-radius:50%;background:conic-gradient(from 135deg,var(--blue-soft) 0deg,oklch(.86 .06 200) 45deg,var(--gold-soft) 110deg,var(--coral-soft) 180deg,var(--coral-deep) 240deg,var(--coral-deep) 270deg,transparent 270deg);border:1.5px solid var(--rule);overflow:hidden}.dial:before{content:"";position:absolute;inset:18px;border-radius:50%;background:var(--paper);border:1px solid var(--rule)}.dial-needle{position:absolute;top:50%;left:50%;width:3px;height:88px;background:var(--ink);border-radius:2px;transform-origin:center bottom;transform:translate(-50%,-100%) rotate(0);transition:transform 1.4s cubic-bezier(.5,0,.3,1);z-index:2}.dial-needle:after{content:"";position:absolute;bottom:-7px;left:50%;transform:translate(-50%);width:14px;height:14px;border-radius:50%;background:var(--ink)}.dial-readout{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:3;gap:2px}.dial-readout .num{font-family:var(--display);font-size:2.4rem;font-weight:500;line-height:1}.dial-readout .lbl{color:var(--ink-faint);font-family:var(--display);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}.dial-ticks{position:absolute;inset:0;pointer-events:none}.dial-tick{position:absolute;top:50%;left:50%;width:1px;height:6px;background:var(--ink-faint);transform-origin:center 110px}.dial-tick.long{height:10px;background:var(--ink)}.dial-caption{margin-top:14px;text-align:center;color:var(--ink-faint);font-family:var(--display);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.reshaper{display:grid;gap:18px}.reshaper-prompt{padding:14px 18px;border:1px solid var(--rule);border-radius:10px;background:var(--paper-2);font-family:var(--serif);font-size:1.1rem;text-align:center}.reshaper-controls{display:grid;gap:6px;padding:16px 20px;border:1px dashed var(--rule);border-radius:10px}.reshaper-controls label{display:flex;justify-content:space-between;align-items:baseline;color:var(--ink-soft);font-family:var(--display);font-size:.86rem}.reshaper-controls label .val{color:var(--ink);font-family:var(--mono);font-size:1rem}.reshaper-controls input[type=range]{width:100%;min-height:44px;-webkit-appearance:none;appearance:none;height:4px;border-radius:2px;background:linear-gradient(to right,var(--blue-soft) 0%,var(--blue-soft) 25%,var(--gold-soft) 50%,var(--coral-soft) 75%,var(--coral-deep) 100%);outline:none;background-clip:content-box;padding-block:20px}.reshaper-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--ink);cursor:pointer;border:3px solid var(--paper);box-shadow:0 2px 6px #00000026}.reshaper-axis{display:flex;justify-content:space-between;font-family:var(--display);font-size:.72rem;color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase}.reshaper-presets{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.preset-btn{min-height:44px;padding:8px 14px;border:1px solid var(--rule);border-radius:999px;background:var(--paper);cursor:pointer;font-family:var(--display);font-size:.82rem;color:var(--ink-soft);transition:all .2s ease}.preset-btn:hover{border-color:var(--ink);color:var(--ink)}.preset-btn.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.dist-bars{display:grid;gap:8px;padding:8px 0}.dist-row{display:grid;grid-template-columns:130px 1fr 80px;gap:14px;align-items:center}.dist-row .word{font-family:var(--display);font-size:.95rem;color:var(--ink)}.dist-row .word.faded{color:var(--ink-faint)}.dist-row .track{height:22px;border-radius:5px;background:var(--paper-2);overflow:hidden;border:1px solid var(--rule)}.dist-row .fill{height:100%;background:var(--coral-soft);border-right:2px solid var(--coral-deep);transition:width .5s cubic-bezier(.4,0,.2,1)}.dist-row.lead .fill{background:var(--coral-deep);border-right-color:var(--ink)}.dist-row .pct{font-family:var(--mono);font-size:.86rem;color:var(--ink-faint);text-align:right}.dist-summary{display:flex;justify-content:space-around;flex-wrap:wrap;gap:18px;padding:14px 18px;border-radius:10px;background:var(--paper-2)}.dist-summary .stat{text-align:center}.dist-summary .stat .num{font-family:var(--display);font-size:1.5rem;font-weight:500;color:var(--ink);line-height:1}.dist-summary .stat .lbl{display:block;margin-top:4px;color:var(--ink-faint);font-family:var(--display);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.formula-walk{display:grid;gap:18px}.formula-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fcell{padding:14px 12px;border:1.5px solid var(--rule);border-radius:10px;background:var(--paper);text-align:center;position:relative;transition:all .3s ease;cursor:pointer}.fcell:after{content:"→";position:absolute;right:-16px;top:50%;transform:translateY(-50%);color:var(--ink-faint);font-family:var(--display);font-size:1.2rem;z-index:2}.fcell:last-child:after{display:none}.fcell.active{background:var(--coral-soft);border-color:var(--coral-deep);transform:translateY(-2px);box-shadow:0 8px 18px -10px #3c28144d}.fcell .step{display:block;color:var(--ink-faint);font-family:var(--display);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.fcell .name{margin-top:4px;font-family:var(--display);font-size:.92rem;color:var(--ink)}.fcell .expr{margin-top:6px;font-family:var(--mono);font-size:.78rem;color:var(--ink-soft)}.formula-stage{padding:22px 24px;border:1px solid var(--rule);border-radius:10px;background:var(--paper);display:grid;gap:12px}.formula-stage h4{margin:0;font-family:var(--display);font-size:1.15rem}.formula-stage .role{color:var(--coral-deep);font-family:var(--display);font-size:.86rem}.formula-stage .expr-big{max-width:100%;padding:10px 14px;border:1px solid var(--rule);border-radius:8px;background:var(--paper-2);font-family:var(--mono);font-size:1rem;align-self:flex-start;overflow-wrap:anywhere}.formula-stage p{margin:0;color:var(--ink-soft);font-size:.96rem}.numbers-table{display:grid;grid-template-columns:minmax(90px,1.2fr) repeat(4,minmax(66px,1fr));max-width:100%;border:1px solid var(--rule);border-radius:10px;overflow:auto}.numbers-table .hd{padding:10px 12px;background:var(--ink);color:var(--paper);font-family:var(--display);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.numbers-table .cell{padding:10px 12px;border-top:1px solid var(--rule);font-family:var(--mono);font-size:.84rem;color:var(--ink-soft)}.numbers-table .cell.label{font-family:var(--display);color:var(--ink)}.numbers-table .cell.lead{background:var(--coral-soft);color:var(--coral-deep);font-weight:500}.writers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.writer{padding:22px 22px 24px;border:1.5px solid var(--rule);border-radius:12px;background:var(--paper);display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden}.writer:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.writer.cold:before{background:var(--blue-deep)}.writer.warm:before{background:var(--gold)}.writer.hot:before{background:var(--coral-deep)}.writer-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.writer-temp{font-family:var(--display);font-size:1.6rem;font-weight:500;line-height:1}.writer-name{color:var(--ink-faint);font-family:var(--display);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase}.writer-mood{color:var(--ink-soft);font-family:var(--display);font-size:.82rem;font-style:italic}.writer-text{flex:1;padding-top:10px;border-top:1px dashed var(--rule);font-family:var(--serif);font-size:.96rem;line-height:1.55;min-height:130px}.writer-text .nodd{background:var(--gold-soft);padding:0 3px;border-radius:3px}.writer-text .nbad{background:var(--coral-soft);padding:0 3px;border-radius:3px}.writer-meta{display:flex;gap:14px;padding-top:10px;border-top:1px solid var(--rule);color:var(--ink-faint);font-family:var(--display);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase}.writers-controls{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:18px}.compare-knobs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.knob{padding:22px;border:1.5px solid var(--rule);border-radius:12px;background:var(--paper);display:flex;flex-direction:column;gap:10px}.knob-head{display:flex;justify-content:space-between;align-items:baseline}.knob-name{font-family:var(--display);font-size:1.15rem;font-weight:500}.knob-tag{color:var(--paper);font-family:var(--display);font-size:.7rem;letter-spacing:.08em;padding:2px 8px;border-radius:999px}.knob.k-temp .knob-tag{background:var(--coral-deep)}.knob.k-topk .knob-tag{background:var(--blue-deep)}.knob.k-topp .knob-tag{background:var(--sage-deep)}.knob-summary{color:var(--ink);font-family:var(--serif);font-size:.96rem;line-height:1.5;min-height:90px}.knob-formula{padding:8px 10px;border:1px solid var(--rule);border-radius:7px;background:var(--paper-2);font-family:var(--mono);font-size:.78rem;color:var(--ink-soft);overflow-wrap:anywhere}.knob-take{padding-top:10px;border-top:1px dashed var(--rule);color:var(--ink-soft);font-family:var(--display);font-size:.82rem;font-style:italic}.recipe-table{display:grid;grid-template-columns:1.6fr .7fr 1.2fr 1.6fr;border:1px solid var(--rule);border-radius:10px;overflow:hidden}.recipe-table .hd{padding:12px 16px;background:var(--ink);color:var(--paper);font-family:var(--display);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.recipe-table .cell{padding:14px 16px;border-top:1px solid var(--rule);font-family:var(--display);font-size:.93rem;color:var(--ink)}.recipe-table .cell.t{font-family:var(--mono);text-align:center;font-size:.96rem}.recipe-table .cell.note{font-family:var(--serif);color:var(--ink-soft);font-size:.92rem;line-height:1.45}.t-pill{display:inline-block;padding:2px 10px;border-radius:999px;font-weight:500}.t-pill.cold{background:var(--blue-soft);color:var(--blue-deep)}.t-pill.cool{background:#cfebec;color:#315e60}.t-pill.warm{background:var(--gold-soft);color:#7b5f1b}.t-pill.hot{background:var(--coral-soft);color:var(--coral-deep)}.caveats{display:grid;gap:4px;margin-top:18px}.caveats article{padding:18px 0;border-top:1px solid var(--rule)}.caveats article h4{font-family:var(--display);font-size:1.05rem;margin-bottom:6px}.caveats article p{margin:0;color:var(--ink-soft);font-size:.96rem}.next-lesson-card{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;margin-top:60px;padding:22px 24px;border:1.5px solid var(--rule);border-radius:14px;background:var(--paper);text-decoration:none;background-image:none;transition:all .2s ease}.next-lesson-card:hover{border-color:var(--ink-soft);background-image:none;box-shadow:0 18px 36px -22px #3c28144d;transform:translateY(-2px)}.next-lesson-card .num{font-family:var(--display);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.next-lesson-card .title{font-family:var(--display);font-size:1.15rem;font-weight:500;color:var(--ink);margin-top:2px}.next-lesson-card .arrow{font-family:var(--display);font-size:1.4rem;color:var(--ink-faint)}@media(max-width:880px){.tp-hero{grid-template-columns:1fr;gap:22px;padding:24px 18px}.tp-hero .side.left,.tp-hero .side{text-align:center}.writers,.compare-knobs{grid-template-columns:1fr}}@media(max-width:720px){.dial{width:188px;height:188px}.dial:before{inset:16px}.dial-needle{height:74px}.dial-readout .num{font-size:2rem}.reshaper-controls{padding:14px}.reshaper-presets{justify-content:stretch}.reshaper-presets .preset-btn{flex:1 1 140px}.dist-row{grid-template-columns:90px 1fr 56px;gap:8px}.formula-grid{grid-template-columns:repeat(2,1fr)}.fcell:after{display:none}.fcell{padding:12px 8px}.fcell .expr{font-size:.7rem;overflow-wrap:anywhere}.formula-stage{padding:18px}.numbers-table{grid-template-columns:88px repeat(4,64px);font-size:.78rem}.numbers-table .hd,.numbers-table .cell{padding:8px 9px}.writer{padding:18px}.writer-text{min-height:0}.recipe-table{grid-template-columns:1fr .6fr 1fr}.recipe-table .hd:nth-child(3),.recipe-table .cell:nth-child(4n+3){display:none}}
