/* JC LAB tools: the existing paper/ink palette and editorial type, shared with the private inbox. */
.tools-page{--tool-muted:#6d6b65;--tool-rule:#17171528;--tool-ease:cubic-bezier(.23,1,.32,1);background:var(--paper);color:var(--ink)}
.tools-page *, .toolbox-teaser *{box-sizing:border-box}.tools-page [hidden]{display:none!important}
.tools-header nav{gap:28px}.tools-header .brand{flex-shrink:0}
.tools-page button,.tools-page input,.tools-page textarea{font:inherit;color:inherit;-webkit-appearance:none;appearance:none;border-radius:0}
.tools-page button{cursor:pointer}.tools-page button:disabled{cursor:wait;opacity:.55}
.tools-page :is(a,button,input,textarea,summary):focus-visible{outline:3px solid var(--blue);outline-offset:5px}
.tool-hero h1>span,.updates-main h1>span,.guide-section h2>span,.toolbox-teaser h2>span{display:block;white-space:nowrap}
.tools-page p{line-height:1.8;text-wrap:pretty}.tools-page .eyebrow{font-size:11px;letter-spacing:.07em;line-height:1.6}
.jc-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;padding:14px 24px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:15px;font-weight:600;text-decoration:none;white-space:nowrap;transition:transform 140ms var(--tool-ease),background-color 160ms ease}
.jc-button:active,.jc-copy:active,.jc-choice-group button:active{transform:scale(.98)}
.jc-text-link{display:inline-flex;align-items:center;gap:18px;min-height:44px;font-size:14px;border-bottom:1px solid currentColor;width:fit-content;max-width:100%}
.tool-feature{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--ink);color:var(--ink)}
.tool-feature-art{background:var(--blue);color:var(--paper);padding:34px 40px;display:flex;flex-direction:column;justify-content:space-between;gap:30px;min-height:450px}
.tool-kicker{font:11px/1.5 monospace;letter-spacing:.08em}.tool-feature-art>strong{font-size:clamp(68px,9.5vw,142px);line-height:1;letter-spacing:-.055em;font-weight:900}.tool-dot{color:var(--yellow)}
.tool-art-bottom{display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:24px}.tool-art-bottom .icon-arrow{width:32px;height:32px;transition:transform 220ms var(--tool-ease)}
.tool-feature-copy{display:flex;flex-direction:column;align-items:start;justify-content:center;padding:50px clamp(26px,4vw,65px)}
.tool-feature-copy h2{font-size:clamp(28px,3.25vw,49px);line-height:1.35;letter-spacing:-.055em;margin:28px 0}.tool-feature-copy h2 span{display:block;white-space:nowrap}.tool-feature-copy p{font-size:15px;max-width:25em;margin:0 0 34px;line-height:1.9}.tool-feature-copy .note-read{gap:50px}
.toolbox-teaser{padding:80px 36px 90px;background:var(--paper)}.toolbox-teaser .section-top a{display:inline-flex;align-items:center;gap:14px;min-height:44px;margin-top:-12px}.toolbox-teaser .journal-teaser-heading h2{line-height:1.18}
.tools-hub-end{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:44px 0 0}.tools-hub-end p{margin:0;font-size:14px;color:var(--tool-muted)}
.tool-hero{max-width:1600px;padding:32px 36px 80px;margin:auto}.tool-hero-grid{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:5vw;margin-top:38px}.tool-hero .eyebrow{display:block}.tool-hero h1{font-size:clamp(38px,5.3vw,82px);line-height:1.25;letter-spacing:-.055em;margin:25px 0}.blue-word{color:var(--blue)}.tool-deck{font-size:clamp(16px,1.3vw,20px);margin:28px 0 32px}.tool-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.release-tag{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--tool-muted);margin-top:22px;min-height:44px;width:fit-content}.release-tag>span{width:6px;height:6px;background:var(--blue);border-radius:50%}
.method-poster{background:var(--blue);color:var(--paper);padding:40px 32px;transform:rotate(-2deg)}.method-poster>div{display:grid;grid-template-columns:30px 1fr;gap:8px 20px;padding:28px 0;border-bottom:1px solid #ffffff50;align-items:start}.method-poster>div>span{font:12px monospace;grid-row:1/3;line-height:2}.method-poster strong{font-size:clamp(28px,3vw,42px);line-height:1.1;letter-spacing:-.04em}.method-poster small{font-size:12px;opacity:.75}.method-poster footer{padding-top:28px;font-size:12px;color:var(--yellow)}
.tool-layout{max-width:1350px;margin:0 auto;display:grid;grid-template-columns:220px minmax(0,760px);justify-content:space-between;gap:60px;padding:65px 36px 100px;border-top:1px solid var(--tool-rule)}.tool-toc{position:sticky;top:28px;display:flex;flex-direction:column;align-self:start}.tool-toc>.eyebrow{color:var(--tool-muted);margin-bottom:24px}.tool-toc a{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:8px 0;border-bottom:1px solid var(--tool-rule);font-size:13px}.tool-toc a[aria-current]{color:var(--blue)}.tool-body{min-width:0}.guide-section{scroll-margin-top:24px;margin-bottom:90px}.guide-section:last-child{margin-bottom:0}.guide-section h2{font-size:clamp(32px,3.5vw,48px);line-height:1.25;letter-spacing:-.045em;margin:22px 0 28px}.guide-section>p{font-size:16px;max-width:39em}.guide-section h3{font-size:21px;letter-spacing:-.025em;line-height:1.5;margin:16px 0}.guide-note{font-size:12px!important;color:var(--tool-muted);line-height:1.8!important;margin:20px 0 0}
.jc-tabs{display:flex;border-bottom:1px solid var(--ink);margin:32px 0 0}.jc-tabs button{background:none;border:0;padding:17px 18px;min-height:54px;font-size:14px;flex:1;position:relative;white-space:nowrap}.jc-tabs button[aria-selected=true]{background:var(--ink);color:var(--paper)}
.scene-panel{padding:32px 0 16px}.scene-panel blockquote{font-size:clamp(23px,2.3vw,31px);font-weight:700;line-height:1.6;letter-spacing:-.025em;margin:20px 0 24px;max-width:24em;text-wrap:pretty}.scene-panel p{font-size:15px}.method-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:30px 0;border-block:1px solid var(--tool-rule);padding:22px 0}.method-steps>div{display:grid;gap:14px}.method-steps span{font:12px monospace;color:var(--blue)}.method-steps strong{font-size:14px;line-height:1.6;font-weight:500}.scene-result{font-weight:600}.scene-end{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;color:var(--tool-muted);border-top:1px solid var(--tool-rule);margin-top:24px;padding-top:12px}
.jc-copy{display:inline-flex;align-items:center;gap:14px;min-height:44px;border:0;border-bottom:1px solid currentColor;background:none;padding:8px 0;font-size:13px!important;color:var(--ink)!important;white-space:nowrap;transition:transform 140ms var(--tool-ease)}
.install-picker{margin:30px 0;padding:28px;border:1px solid var(--tool-rule)}.field-label{font-size:13px;margin:0 0 14px;font-weight:600}.jc-choice-group{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.jc-choice-group button{padding:11px 18px;min-height:46px;border:1px solid var(--tool-rule);background:transparent;font-size:14px;white-space:nowrap;transition:background-color 160ms ease,color 160ms ease,transform 140ms var(--tool-ease)}.jc-choice-group button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.install-route{border-top:1px solid var(--tool-rule);padding-top:28px;margin-top:30px}.install-route>p{font-size:14px}.copy-passage{background:#eae7df;padding:22px;margin:22px 0;min-width:0}.copy-passage p{margin:0 0 16px;font-size:14px!important;line-height:1.9;overflow-wrap:anywhere;user-select:text}.copy-passage .jc-copy{border-color:#17171555}.mobile-handoff{display:none;background:#244bff0b;border-left:3px solid var(--blue);padding:20px;margin-top:25px}.mobile-handoff p{font-size:14px}.mobile-handoff strong{font-size:16px}
.usage-row{display:grid;grid-template-columns:90px 1fr;gap:22px;border-top:1px solid var(--tool-rule);padding:24px 0}.usage-row>span{font-size:12px;color:var(--tool-muted);padding-top:4px}.usage-row h3{font-size:19px;margin:0 0 12px}.usage-row p{font-size:14px;margin:0}.jc-disclosure{border-top:1px solid var(--tool-rule);margin:0}.jc-disclosure:last-of-type{border-bottom:1px solid var(--tool-rule);margin-bottom:28px}.jc-disclosure summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:70px;padding:18px 0;font-size:16px;font-weight:600;cursor:pointer;line-height:1.65}.jc-disclosure summary::-webkit-details-marker{display:none}.jc-disclosure summary>span{position:relative;flex:0 0 16px;width:16px;height:16px}.jc-disclosure summary>span:before,.jc-disclosure summary>span:after{content:"";position:absolute;background:currentColor;left:0;top:7px;width:16px;height:1.5px}.jc-disclosure summary>span:after{transform:rotate(90deg);transition:transform 160ms var(--tool-ease)}.jc-disclosure[open] summary>span:after{transform:rotate(0)}.jc-disclosure>div{padding:0 0 24px;font-size:14px;line-height:1.8}.jc-disclosure p{margin:0 0 16px}.command-list{margin:0}.command-list>div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--tool-rule)}.command-list dd{font-family:monospace}.tools-page code{font-size:.9em;background:#eae7df;padding:2px 5px}
.tools-toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,12px);padding:13px 22px;max-width:calc(100vw - 40px);background:var(--ink);color:var(--paper);font-size:13px;line-height:1.6;box-shadow:0 8px 25px #17171515;z-index:40;opacity:0;pointer-events:none;transition:opacity 180ms ease,transform 180ms var(--tool-ease)}.tools-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.updates-main{max-width:1200px;margin:auto;padding:30px 36px 120px}.updates-main>.eyebrow{display:block;margin-top:48px}.updates-main h1{font-size:clamp(36px,5vw,72px);line-height:1.3;letter-spacing:-.05em;margin:26px 0 70px}.release-entry{display:grid;grid-template-columns:200px 1fr;gap:50px;border-top:1px solid var(--ink);padding-top:36px}.release-meta{display:flex;flex-direction:column;align-items:start;gap:14px;font-size:12px}.release-meta strong{font:700 44px/1 Arial,sans-serif}.release-meta>span{border:1px solid var(--tool-rule);padding:4px 10px}.release-meta time{color:var(--tool-muted)}.release-entry h2{font-size:30px;margin:0 0 25px;line-height:1.4}.release-entry p,.release-entry li{font-size:15px;line-height:1.9}.release-entry ul{padding-left:20px;margin-bottom:28px}.download-secondary{margin:20px 0 30px;display:flex}.release-download-row{display:grid;gap:10px;border-top:1px solid var(--tool-rule);padding:16px 0}.release-download-row code{display:block;font-size:10px;overflow-wrap:anywhere;line-height:1.8}.release-download-row a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
@media(hover:hover) and (pointer:fine){.jc-button:hover{background:var(--blue);border-color:var(--blue)}.jc-text-link:hover,.tool-toc a:hover{color:var(--blue)}.tool-feature:hover .tool-art-bottom .icon-arrow{transform:translate(4px,-4px)}.tool-feature:hover .note-read{border-color:var(--blue)}}
@media(max-width:1000px){.tool-layout{grid-template-columns:160px minmax(0,1fr);gap:36px}.tool-hero-grid{gap:30px}.method-poster{padding:28px 24px}.tool-feature-art{min-height:390px}.tools-header nav{gap:18px}}
@media(max-width:760px){
 .tools-header{padding:18px 22px;gap:16px}.tools-header nav{gap:18px}.tools-header nav a:first-child,.tools-header .tools-contact{display:none}.tools-header nav a{white-space:nowrap}.tools-header nav .icon-arrow{display:none}.tools-header .brand{gap:8px}
 .tool-feature{grid-template-columns:1fr}.tool-feature-art{min-height:340px;padding:26px}.tool-feature-art>strong{font-size:98px}.tool-feature-copy{padding:32px 0 38px}.tool-feature-copy h2{font-size:clamp(27px,7.7vw,45px);margin:20px 0}.tool-feature-copy p{font-size:14px}.tool-feature-copy .note-read{font-size:13px}
 .toolbox-teaser{padding:50px 22px 65px}.toolbox-teaser .journal-teaser-heading h2{font-size:38px}.tools-hub-end{display:block;padding-top:28px}.tools-hub-end p{margin-bottom:12px}
 .tool-hero{padding:20px 22px 45px}.tool-hero-grid{grid-template-columns:1fr;margin-top:20px;gap:40px}.tool-hero h1{font-size:clamp(29px,8.6vw,54px);margin:22px 0;letter-spacing:-.055em;line-height:1.3}.tool-deck{font-size:15px;max-width:24em;margin:22px 0}.tool-actions{gap:18px;align-items:start}.jc-button{font-size:14px;min-height:50px;padding:12px 18px;gap:24px}.jc-text-link{font-size:13px}.release-tag{margin-top:10px}
 .method-poster{transform:none;padding:16px 22px}.method-poster>div{grid-template-columns:24px 1fr auto;align-items:center;padding:18px 0;gap:14px}.method-poster>div>span{grid-row:auto;font-size:10px}.method-poster strong{font-size:26px}.method-poster small{font-size:11px}.method-poster footer{padding-top:18px;font-size:11px}
 .tool-layout{display:block;padding:0 22px 55px;border:0}.tool-toc{position:static;margin-bottom:46px;display:grid;grid-template-columns:1fr 1fr;gap:0 22px;border-top:1px solid var(--tool-rule);padding-top:22px}.tool-toc>.eyebrow{grid-column:1/-1;margin-bottom:12px}.tool-toc a{font-size:12px;min-height:45px}.tool-toc .icon-arrow{width:14px;height:14px}.guide-section{margin-bottom:65px}.guide-section h2{font-size:34px;margin:20px 0 24px}.guide-section>p{font-size:15px}.jc-tabs button{padding:14px 9px;font-size:13px}.scene-panel{padding-top:26px}.scene-panel blockquote{font-size:24px}.method-steps{gap:15px}.method-steps strong{font-size:12px}.scene-end{display:block}.scene-end>span{display:block;margin-bottom:8px}.install-picker{padding:20px 16px}.jc-choice-group{gap:6px}.jc-choice-group button{padding:10px 13px;font-size:13px}.guide-section h3{font-size:19px}.copy-passage{padding:18px 15px}.usage-row{grid-template-columns:1fr;gap:12px;padding:24px 0}.usage-row h3{font-size:18px}.jc-disclosure summary{font-size:15px;min-height:65px}.mobile-handoff{display:block}.tools-toast{bottom:20px;width:max-content}
 .updates-main{padding:20px 22px 65px}.updates-main>.eyebrow{margin-top:30px}.updates-main h1{font-size:clamp(29px,8.5vw,46px);margin:24px 0 45px}.release-entry{grid-template-columns:1fr;gap:30px;padding-top:28px}.release-meta{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px 18px}.release-meta strong{font-size:34px}.release-meta time{margin-left:auto}.release-entry h2{font-size:26px}.release-entry p,.release-entry li{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.tools-page *, .toolbox-teaser *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.tools-page.keyboard-input *{transition:none!important}

.scene-panel blockquote>span{display:inline-block;white-space:nowrap}

@media(max-width:760px){.tools-page .journal-masthead h1{font-size:clamp(70px,20vw,100px)}}

.release-entry h2>span{display:inline-block;white-space:nowrap}.release-history{margin-top:60px}
.tools-page .phrase{display:inline-block;white-space:nowrap}
