/*!
 * Themeasy — Code Terminal
 *
 * Animated terminal window: a title bar (macOS traffic lights, minimal hairline
 * or no chrome at all) over a dark body where command lines type in behind a
 * blinking block cursor and output lines reveal in sequence. The terminal is
 * deliberately dark in BOTH site themes (a terminal is a dark artifact), built
 * on literals plus --tms-* tokens with fallbacks; every color is overridable
 * from the widget's style controls.
 *
 * Layering / degradation:
 * - The markup ships the FULL transcript; only the JS-applied --armed class
 *   hides not-yet-shown lines, so no-JS renders the complete terminal.
 * - --static (editor) keeps everything visible; the engine never runs there.
 * - prefers-reduced-motion: the engine never arms, and this sheet force-shows
 *   every line and stops the cursor blink as a defensive double.
 *
 * Tokens consumed: --tms-primary-color (public --tms-* design API).
 *
 * @author Themeasy
 * @link https://themeasy.co
 * @since 1.0.0
 */
.tms-code-terminal{--tms-code-terminal-bg:#0f1319;--tms-code-terminal-bar-bg:#1a2029;--tms-code-terminal-title-color:#8a93a2;--tms-code-terminal-prompt-color:var(--tms-primary-color,#5b6cff);--tms-code-terminal-command-color:#e8edf4;--tms-code-terminal-output-color:#9aa4b2;--tms-code-terminal-success-color:#34d399;--tms-code-terminal-error-color:#f87171;--tms-code-terminal-comment-color:#66738a;--tms-code-terminal-cursor-color:#e8edf4;background-color:var(--tms-code-terminal-bg);-webkit-font-smoothing:antialiased;border:1px solid #ffffff0f;border-radius:14px;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;position:relative;overflow:hidden;box-shadow:0 30px 60px -20px #02060c8c}.tms-code-terminal ::selection{color:var(--tms-white-color,#fff);background-color:var(--tms-primary-color,#5b6cff)}.tms-code-terminal__bar{background-color:var(--tms-code-terminal-bar-bg);align-items:center;gap:12px;min-height:48px;padding:6px 8px 6px 16px;display:flex;position:relative}.tms-code-terminal--mac .tms-code-terminal__bar{background-image:linear-gradient(#ffffff0d,#fff0 60%);box-shadow:inset 0 1px #ffffff0a}.tms-code-terminal--minimal .tms-code-terminal__bar{background-color:#0000;border-bottom:1px solid #ffffff14}.tms-code-terminal__dots{flex:none;align-items:center;gap:8px;display:inline-flex}.tms-code-terminal__dot{border-radius:50%;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0000001f}.tms-code-terminal__dot--close{background-color:#ff5f57}.tms-code-terminal__dot--minimize{background-color:#febc2e}.tms-code-terminal__dot--zoom{background-color:#28c840}.tms-code-terminal__title{letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;color:var(--tms-code-terminal-title-color);font-size:.8125rem;overflow:hidden}.tms-code-terminal--mac .tms-code-terminal__title{max-width:55%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tms-code-terminal--minimal .tms-code-terminal__title{flex:auto;min-width:0}.tms-code-terminal__copy[hidden]{display:none}.tms-code-terminal__copy{width:40px;height:40px;color:var(--tms-code-terminal-title-color);cursor:pointer;transition:color var(--tms-transition-fast,.2s ease), background-color var(--tms-transition-fast,.2s ease);background-color:#0000;border:0;border-radius:8px;flex:none;place-items:center;margin-inline-start:auto;padding:0;display:inline-grid}.tms-code-terminal--minimal .tms-code-terminal__copy{margin-inline-start:auto}.tms-code-terminal__copy:hover{color:var(--tms-code-terminal-command-color);background-color:#ffffff14}.tms-code-terminal__copy:focus-visible{color:var(--tms-code-terminal-command-color);background-color:#ffffff14}.tms-code-terminal__copy:focus-visible{outline:2px solid var(--tms-primary-color,#5b6cff);outline-offset:2px}.tms-code-terminal__copy:active{transform:translateY(1px)}.tms-code-terminal__copy-icon{width:16px;height:16px;transition:opacity var(--tms-transition-fast,.2s ease), transform var(--tms-transition-fast,.2s ease);grid-area:1/1}.tms-code-terminal__copy-icon--check,.tms-code-terminal__copy--copied .tms-code-terminal__copy-icon--copy{opacity:0;transform:scale(.5)}.tms-code-terminal__copy--copied .tms-code-terminal__copy-icon--check{color:var(--tms-code-terminal-success-color);opacity:1;transform:scale(1)}.tms-code-terminal__body{overscroll-behavior:contain;-moz-tab-size:2;tab-size:2;padding:20px 24px 24px;font-size:.9375rem;line-height:1.7;overflow-y:auto}.tms-code-terminal__lines{flex-direction:column;row-gap:2px;margin:0;padding:0;list-style:none;display:flex}.tms-code-terminal__line{align-items:baseline;gap:.75ch;margin:0;display:flex}.tms-code-terminal__prompt{color:var(--tms-code-terminal-prompt-color);-webkit-user-select:none;user-select:none;flex:none}.tms-code-terminal__text{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.tms-code-terminal__line--command .tms-code-terminal__text{color:var(--tms-code-terminal-command-color)}.tms-code-terminal__line--output .tms-code-terminal__text{color:var(--tms-code-terminal-output-color)}.tms-code-terminal__line--success .tms-code-terminal__text{color:var(--tms-code-terminal-success-color)}.tms-code-terminal__line--error .tms-code-terminal__text{color:var(--tms-code-terminal-error-color)}.tms-code-terminal__line--comment .tms-code-terminal__text{color:var(--tms-code-terminal-comment-color);font-style:italic}.tms-code-terminal--armed .tms-code-terminal__line:not(.tms-code-terminal__line--shown){display:none}.tms-code-terminal__cursor{vertical-align:text-bottom;background-color:var(--tms-code-terminal-cursor-color);width:.6ch;height:1.05em;margin-inline-start:1px;animation:1.1s step-end infinite tms-code-terminal-blink;display:inline-block}.tms-code-terminal__cursor--typing{opacity:1;animation:none}@keyframes tms-code-terminal-blink{0%,to{opacity:1}50%{opacity:0}}.tms-code-terminal__sr,.tms-code-terminal__copy-status{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tms-code-terminal__sr p{margin:0}@media (max-width:767px){.tms-code-terminal{border-radius:12px}.tms-code-terminal__bar{min-height:44px;padding-inline-start:12px}.tms-code-terminal--mac .tms-code-terminal__title{max-width:45%}.tms-code-terminal__body{padding:16px;font-size:.875rem}}@media (prefers-reduced-motion:reduce){.tms-code-terminal--armed .tms-code-terminal__line:not(.tms-code-terminal__line--shown){display:flex}.tms-code-terminal__cursor{opacity:1;animation:none}.tms-code-terminal__copy-icon{transition:none}}