@charset "UTF-8";
.date-block { width: 60px; height: 60px; flex-shrink: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: var(--bs-border-radius-lg); text-align: center; background-color: var(--bs-primary-subtle); color: var(--bs-primary-emphasis); }

.date-block .day { font-size: 1.25rem; font-weight: bold; line-height: 1.2; }

.date-block .month { font-size: 0.75rem; text-transform: uppercase; font-weight: bold; line-height: 1; }

.card-footer-inset { margin-left: calc(60px + var(--bs-card-spacer-x)); }

/* ========================================= TRADE IDEAS PAGE STYLES ========================================= */
/* --- Date Block Styling (Used for Trade Card Headers) --- */
.date-block { text-align: center; line-height: 1; flex-shrink: 0; /* Prevents date block from shrinking */ }

.date-block .month { display: block; font-size: 0.75rem; font-weight: 700; color: var(--bs-primary); /* Primary color for month */ }

.date-block .day { display: block; font-size: 1.5rem; font-weight: 900; color: var(--bs-body-color); }

/* --- Trade Card Header Status Pills --- */
.status-pill { display: inline-block; padding: 0.2rem 0.5rem; font-size: 0.75rem; font-weight: 700; line-height: 1; text-align: center; white-space: nowrap; vertical-align: baseline; border-radius: 0.375rem; /* Rounded corners */ }

/* Specific Pill Colors */
.status-open { color: var(--bs-dark); background-color: var(--bs-success); }

.status-closed { color: var(--bs-body-color); background-color: var(--bs-body-color-secondary); }

.account-ira { color: var(--bs-dark); background-color: var(--bs-primary); /* Gold/Yellow */ }

.account-margin { color: var(--bs-body-color); background-color: var(--bs-secondary); }

.account-paper { color: var(--bs-body-color); background-color: var(--bs-info); }

/* --- Trade Leg Details Grid --- */
.leg-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 0.5rem; padding: 0.5rem; background-color: var(--bs-body-bg); border-radius: var(--bs-border-radius); }

.leg-grid .leg-item { display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 0.25rem; border: 1px dashed var(--bs-border-color); border-radius: var(--bs-border-radius-sm); }

.leg-grid .leg-item strong { font-size: 0.65rem; text-transform: uppercase; }

.leg-grid .leg-item span { font-family: var(--bs-font-monospace); font-size: 0.8rem; font-weight: 700; }

/* --- Trade Metrics Grid --- */
.metrics-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.5rem; }

.metrics-grid .metric-item strong { display: block; font-size: 0.75rem; font-weight: 700; color: var(--bs-body-color); }

.metrics-grid .metric-item span { display: block; font-size: 0.9rem; font-weight: 400; font-family: var(--bs-font-monospace); color: var(--bs-secondary-color); }

/* ========================================= TRADE PROGRESSION TIMELINE STYLES ========================================= */
.progression-timeline { list-style: none; padding-left: 1.5rem; border-left: 2px solid var(--bs-border-color); position: relative; margin-top: 1rem; }

.progression-step { position: relative; padding-bottom: 1.5rem; /* The timeline circle marker */ }

.progression-step:last-child { padding-bottom: 0; }

.progression-step::before { content: ""; position: absolute; left: -1.9rem; /* Position to the left of the border */ top: 0.2rem; width: 12px; height: 12px; border-radius: 50%; background-color: var(--bs-secondary); /* Default neutral color */ border: 2px solid var(--bs-body-bg); z-index: 10; }

/* Specific marker colors based on step type */
/* --- UPDATED TO MATCH LIQUID OUTPUT --- */
.progression-step.step-open-short-put::before { background-color: var(--bs-primary); }

/* Gold/Yellow for initiation */
.progression-step.step-assignment::before { background-color: var(--bs-indigo); }

/* Indigo for stock acquisition */
.progression-step.step-wheel-step-sell-covered-call::before, .progression-step.step-wheel-step-close-covered-call::before { background-color: var(--bs-info); }

/* Info blue for wheel management */
.progression-step.step-close::before { background-color: var(--bs-success); }

/* Green for successful close */
.progression-step.step-called-away::before { background-color: var(--bs-success); }

.progression-step.step-closed-independent-put::before { background-color: var(--bs-success); }

.progression-step.estimated-scenario::before { background-color: var(--bs-body-color-secondary); border-style: dashed; }

/* Progression Header (Pill and Date) */
.progression-header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 0.5rem; }

.progression-tag { font-size: 0.7rem; font-weight: 700; padding: 0.15rem 0.5rem; border-radius: 0.375rem; text-transform: uppercase; }

/* Specific Pill Colors for Progression */
/* --- UPDATED TO MATCH LIQUID OUTPUT --- */
.progression-tag.tag-open-short-put { background-color: var(--bs-primary); /* Gold */ color: var(--bs-dark); }

.progression-tag.tag-assignment { background-color: var(--bs-indigo); /* Indigo for assignment */ color: var(--bs-white); }

.progression-tag.tag-wheel-step-sell-covered-call, .progression-tag.tag-wheel-step-close-covered-call { background-color: var(--bs-info); /* Info Blue */ color: var(--bs-dark); }

.progression-tag.tag-called-away { background-color: var(--bs-success); color: var(--bs-dark); }

.progression-tag.tag-closed-independent-put { background-color: var(--bs-success); color: var(--bs-dark); }

.progression-tag.tag-close { background-color: var(--bs-success); color: var(--bs-dark); }

.progression-tag.tag-adjustment { background-color: var(--bs-warning); color: var(--bs-dark); }

.progression-tag.tag-estimated { background-color: var(--bs-body-color-secondary); color: var(--bs-body-bg); }

.progression-date { font-size: 0.75rem; color: var(--bs-secondary-color); }

.progression-details { padding-left: 0.5rem; }

.progression-details .profit-loss { display: block; font-weight: 700; font-size: 0.85rem; margin-top: 0.25rem; }

/* <-- ADDED: Trade Log Styles */
/*! Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) */
/* FONT PATH -------------------------- */
@font-face { font-family: 'FontAwesome'; src: url("font/fontawesome-webfont.eot?v=4.7.0"); src: url("font/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("font/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("font/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("font/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("font/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg"); font-weight: normal; font-style: normal; }

.fa { display: inline-block; font: normal normal normal 14px/1 FontAwesome; font-size: inherit; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* makes the font 33% larger relative to the icon container */
.fa-lg { font-size: 1.3333333333em; line-height: 0.75em; vertical-align: -15%; }

.fa-2x { font-size: 2em; }

.fa-3x { font-size: 3em; }

.fa-4x { font-size: 4em; }

.fa-5x { font-size: 5em; }

.fa-fw { width: 1.2857142857em; text-align: center; }

.fa-ul { padding-left: 0; margin-left: 2.1428571429em; list-style-type: none; }

.fa-ul > li { position: relative; }

.fa-li { position: absolute; left: -2.1428571429em; width: 2.1428571429em; top: 0.1428571429em; text-align: center; }

.fa-li.fa-lg { left: -1.8571428571em; }

.fa-border { padding: .2em .25em .15em; border: solid 0.08em #eee; border-radius: .1em; }

.fa-pull-left { float: left; }

.fa-pull-right { float: right; }

.fa.fa-pull-left { margin-right: .3em; }

.fa.fa-pull-right { margin-left: .3em; }

/* Deprecated as of 4.4.0 */
.pull-right { float: right; }

.pull-left { float: left; }

.fa.pull-left { margin-right: .3em; }

.fa.pull-right { margin-left: .3em; }

.fa-spin { -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear; }

.fa-pulse { -webkit-animation: fa-spin 1s infinite steps(8); animation: fa-spin 1s infinite steps(8); }

@-webkit-keyframes fa-spin { 0% { -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% { -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes fa-spin { 0% { -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% { -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

.fa-rotate-90 { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); }

.fa-rotate-180 { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); }

.fa-rotate-270 { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; -webkit-transform: rotate(270deg); -ms-transform: rotate(270deg); transform: rotate(270deg); }

.fa-flip-horizontal { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; -webkit-transform: scale(-1, 1); -ms-transform: scale(-1, 1); transform: scale(-1, 1); }

.fa-flip-vertical { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; -webkit-transform: scale(1, -1); -ms-transform: scale(1, -1); transform: scale(1, -1); }

:root .fa-rotate-90, :root .fa-rotate-180, :root .fa-rotate-270, :root .fa-flip-horizontal, :root .fa-flip-vertical { filter: none; }

.fa-stack { position: relative; display: inline-block; width: 2em; height: 2em; line-height: 2em; vertical-align: middle; }

.fa-stack-1x, .fa-stack-2x { position: absolute; left: 0; width: 100%; text-align: center; }

.fa-stack-1x { line-height: inherit; }

.fa-stack-2x { font-size: 2em; }

.fa-inverse { color: #fff; }

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen readers do not read off random characters that represent icons */
.fa-glass:before { content: ""; }

.fa-music:before { content: ""; }

.fa-search:before { content: ""; }

.fa-envelope-o:before { content: ""; }

.fa-heart:before { content: ""; }

.fa-star:before { content: ""; }

.fa-star-o:before { content: ""; }

.fa-user:before { content: ""; }

.fa-film:before { content: ""; }

.fa-th-large:before { content: ""; }

.fa-th:before { content: ""; }

.fa-th-list:before { content: ""; }

.fa-check:before { content: ""; }

.fa-remove:before, .fa-close:before, .fa-times:before { content: ""; }

.fa-search-plus:before { content: ""; }

.fa-search-minus:before { content: ""; }

.fa-power-off:before { content: ""; }

.fa-signal:before { content: ""; }

.fa-gear:before, .fa-cog:before { content: ""; }

.fa-trash-o:before { content: ""; }

.fa-home:before { content: ""; }

.fa-file-o:before { content: ""; }

.fa-clock-o:before { content: ""; }

.fa-road:before { content: ""; }

.fa-download:before { content: ""; }

.fa-arrow-circle-o-down:before { content: ""; }

.fa-arrow-circle-o-up:before { content: ""; }

.fa-inbox:before { content: ""; }

.fa-play-circle-o:before { content: ""; }

.fa-rotate-right:before, .fa-repeat:before { content: ""; }

.fa-refresh:before { content: ""; }

.fa-list-alt:before { content: ""; }

.fa-lock:before { content: ""; }

.fa-flag:before { content: ""; }

.fa-headphones:before { content: ""; }

.fa-volume-off:before { content: ""; }

.fa-volume-down:before { content: ""; }

.fa-volume-up:before { content: ""; }

.fa-qrcode:before { content: ""; }

.fa-barcode:before { content: ""; }

.fa-tag:before { content: ""; }

.fa-tags:before { content: ""; }

.fa-book:before { content: ""; }

.fa-bookmark:before { content: ""; }

.fa-print:before { content: ""; }

.fa-camera:before { content: ""; }

.fa-font:before { content: ""; }

.fa-bold:before { content: ""; }

.fa-italic:before { content: ""; }

.fa-text-height:before { content: ""; }

.fa-text-width:before { content: ""; }

.fa-align-left:before { content: ""; }

.fa-align-center:before { content: ""; }

.fa-align-right:before { content: ""; }

.fa-align-justify:before { content: ""; }

.fa-list:before { content: ""; }

.fa-dedent:before, .fa-outdent:before { content: ""; }

.fa-indent:before { content: ""; }

.fa-video-camera:before { content: ""; }

.fa-photo:before, .fa-image:before, .fa-picture-o:before { content: ""; }

.fa-pencil:before { content: ""; }

.fa-map-marker:before { content: ""; }

.fa-adjust:before { content: ""; }

.fa-tint:before { content: ""; }

.fa-edit:before, .fa-pencil-square-o:before { content: ""; }

.fa-share-square-o:before { content: ""; }

.fa-check-square-o:before { content: ""; }

.fa-arrows:before { content: ""; }

.fa-step-backward:before { content: ""; }

.fa-fast-backward:before { content: ""; }

.fa-backward:before { content: ""; }

.fa-play:before { content: ""; }

.fa-pause:before { content: ""; }

.fa-stop:before { content: ""; }

.fa-forward:before { content: ""; }

.fa-fast-forward:before { content: ""; }

.fa-step-forward:before { content: ""; }

.fa-eject:before { content: ""; }

.fa-chevron-left:before { content: ""; }

.fa-chevron-right:before { content: ""; }

.fa-plus-circle:before { content: ""; }

.fa-minus-circle:before { content: ""; }

.fa-times-circle:before { content: ""; }

.fa-check-circle:before { content: ""; }

.fa-question-circle:before { content: ""; }

.fa-info-circle:before { content: ""; }

.fa-crosshairs:before { content: ""; }

.fa-times-circle-o:before { content: ""; }

.fa-check-circle-o:before { content: ""; }

.fa-ban:before { content: ""; }

.fa-arrow-left:before { content: ""; }

.fa-arrow-right:before { content: ""; }

.fa-arrow-up:before { content: ""; }

.fa-arrow-down:before { content: ""; }

.fa-mail-forward:before, .fa-share:before { content: ""; }

.fa-expand:before { content: ""; }

.fa-compress:before { content: ""; }

.fa-plus:before { content: ""; }

.fa-minus:before { content: ""; }

.fa-asterisk:before { content: ""; }

.fa-exclamation-circle:before { content: ""; }

.fa-gift:before { content: ""; }

.fa-leaf:before { content: ""; }

.fa-fire:before { content: ""; }

.fa-eye:before { content: ""; }

.fa-eye-slash:before { content: ""; }

.fa-warning:before, .fa-exclamation-triangle:before { content: ""; }

.fa-plane:before { content: ""; }

.fa-calendar:before { content: ""; }

.fa-random:before { content: ""; }

.fa-comment:before { content: ""; }

.fa-magnet:before { content: ""; }

.fa-chevron-up:before { content: ""; }

.fa-chevron-down:before { content: ""; }

.fa-retweet:before { content: ""; }

.fa-shopping-cart:before { content: ""; }

.fa-folder:before { content: ""; }

.fa-folder-open:before { content: ""; }

.fa-arrows-v:before { content: ""; }

.fa-arrows-h:before { content: ""; }

.fa-bar-chart-o:before, .fa-bar-chart:before { content: ""; }

.fa-twitter-square:before { content: ""; }

.fa-facebook-square:before { content: ""; }

.fa-camera-retro:before { content: ""; }

.fa-key:before { content: ""; }

.fa-gears:before, .fa-cogs:before { content: ""; }

.fa-comments:before { content: ""; }

.fa-thumbs-o-up:before { content: ""; }

.fa-thumbs-o-down:before { content: ""; }

.fa-star-half:before { content: ""; }

.fa-heart-o:before { content: ""; }

.fa-sign-out:before { content: ""; }

.fa-linkedin-square:before { content: ""; }

.fa-thumb-tack:before { content: ""; }

.fa-external-link:before { content: ""; }

.fa-sign-in:before { content: ""; }

.fa-trophy:before { content: ""; }

.fa-github-square:before { content: ""; }

.fa-upload:before { content: ""; }

.fa-lemon-o:before { content: ""; }

.fa-phone:before { content: ""; }

.fa-square-o:before { content: ""; }

.fa-bookmark-o:before { content: ""; }

.fa-phone-square:before { content: ""; }

.fa-twitter:before { content: ""; }

.fa-facebook-f:before, .fa-facebook:before { content: ""; }

.fa-github:before { content: ""; }

.fa-unlock:before { content: ""; }

.fa-credit-card:before { content: ""; }

.fa-feed:before, .fa-rss:before { content: ""; }

.fa-hdd-o:before { content: ""; }

.fa-bullhorn:before { content: ""; }

.fa-bell:before { content: ""; }

.fa-certificate:before { content: ""; }

.fa-hand-o-right:before { content: ""; }

.fa-hand-o-left:before { content: ""; }

.fa-hand-o-up:before { content: ""; }

.fa-hand-o-down:before { content: ""; }

.fa-arrow-circle-left:before { content: ""; }

.fa-arrow-circle-right:before { content: ""; }

.fa-arrow-circle-up:before { content: ""; }

.fa-arrow-circle-down:before { content: ""; }

.fa-globe:before { content: ""; }

.fa-wrench:before { content: ""; }

.fa-tasks:before { content: ""; }

.fa-filter:before { content: ""; }

.fa-briefcase:before { content: ""; }

.fa-arrows-alt:before { content: ""; }

.fa-group:before, .fa-users:before { content: ""; }

.fa-chain:before, .fa-link:before { content: ""; }

.fa-cloud:before { content: ""; }

.fa-flask:before { content: ""; }

.fa-cut:before, .fa-scissors:before { content: ""; }

.fa-copy:before, .fa-files-o:before { content: ""; }

.fa-paperclip:before { content: ""; }

.fa-save:before, .fa-floppy-o:before { content: ""; }

.fa-square:before { content: ""; }

.fa-navicon:before, .fa-reorder:before, .fa-bars:before { content: ""; }

.fa-list-ul:before { content: ""; }

.fa-list-ol:before { content: ""; }

.fa-strikethrough:before { content: ""; }

.fa-underline:before { content: ""; }

.fa-table:before { content: ""; }

.fa-magic:before { content: ""; }

.fa-truck:before { content: ""; }

.fa-pinterest:before { content: ""; }

.fa-pinterest-square:before { content: ""; }

.fa-google-plus-square:before { content: ""; }

.fa-google-plus:before { content: ""; }

.fa-money:before { content: ""; }

.fa-caret-down:before { content: ""; }

.fa-caret-up:before { content: ""; }

.fa-caret-left:before { content: ""; }

.fa-caret-right:before { content: ""; }

.fa-columns:before { content: ""; }

.fa-unsorted:before, .fa-sort:before { content: ""; }

.fa-sort-down:before, .fa-sort-desc:before { content: ""; }

.fa-sort-up:before, .fa-sort-asc:before { content: ""; }

.fa-envelope:before { content: ""; }

.fa-linkedin:before { content: ""; }

.fa-rotate-left:before, .fa-undo:before { content: ""; }

.fa-legal:before, .fa-gavel:before { content: ""; }

.fa-dashboard:before, .fa-tachometer:before { content: ""; }

.fa-comment-o:before { content: ""; }

.fa-comments-o:before { content: ""; }

.fa-flash:before, .fa-bolt:before { content: ""; }

.fa-sitemap:before { content: ""; }

.fa-umbrella:before { content: ""; }

.fa-paste:before, .fa-clipboard:before { content: ""; }

.fa-lightbulb-o:before { content: ""; }

.fa-exchange:before { content: ""; }

.fa-cloud-download:before { content: ""; }

.fa-cloud-upload:before { content: ""; }

.fa-user-md:before { content: ""; }

.fa-stethoscope:before { content: ""; }

.fa-suitcase:before { content: ""; }

.fa-bell-o:before { content: ""; }

.fa-coffee:before { content: ""; }

.fa-cutlery:before { content: ""; }

.fa-file-text-o:before { content: ""; }

.fa-building-o:before { content: ""; }

.fa-hospital-o:before { content: ""; }

.fa-ambulance:before { content: ""; }

.fa-medkit:before { content: ""; }

.fa-fighter-jet:before { content: ""; }

.fa-beer:before { content: ""; }

.fa-h-square:before { content: ""; }

.fa-plus-square:before { content: ""; }

.fa-angle-double-left:before { content: ""; }

.fa-angle-double-right:before { content: ""; }

.fa-angle-double-up:before { content: ""; }

.fa-angle-double-down:before { content: ""; }

.fa-angle-left:before { content: ""; }

.fa-angle-right:before { content: ""; }

.fa-angle-up:before { content: ""; }

.fa-angle-down:before { content: ""; }

.fa-desktop:before { content: ""; }

.fa-laptop:before { content: ""; }

.fa-tablet:before { content: ""; }

.fa-mobile-phone:before, .fa-mobile:before { content: ""; }

.fa-circle-o:before { content: ""; }

.fa-quote-left:before { content: ""; }

.fa-quote-right:before { content: ""; }

.fa-spinner:before { content: ""; }

.fa-circle:before { content: ""; }

.fa-mail-reply:before, .fa-reply:before { content: ""; }

.fa-github-alt:before { content: ""; }

.fa-folder-o:before { content: ""; }

.fa-folder-open-o:before { content: ""; }

.fa-smile-o:before { content: ""; }

.fa-frown-o:before { content: ""; }

.fa-meh-o:before { content: ""; }

.fa-gamepad:before { content: ""; }

.fa-keyboard-o:before { content: ""; }

.fa-flag-o:before { content: ""; }

.fa-flag-checkered:before { content: ""; }

.fa-terminal:before { content: ""; }

.fa-code:before { content: ""; }

.fa-mail-reply-all:before, .fa-reply-all:before { content: ""; }

.fa-star-half-empty:before, .fa-star-half-full:before, .fa-star-half-o:before { content: ""; }

.fa-location-arrow:before { content: ""; }

.fa-crop:before { content: ""; }

.fa-code-fork:before { content: ""; }

.fa-unlink:before, .fa-chain-broken:before { content: ""; }

.fa-question:before { content: ""; }

.fa-info:before { content: ""; }

.fa-exclamation:before { content: ""; }

.fa-superscript:before { content: ""; }

.fa-subscript:before { content: ""; }

.fa-eraser:before { content: ""; }

.fa-puzzle-piece:before { content: ""; }

.fa-microphone:before { content: ""; }

.fa-microphone-slash:before { content: ""; }

.fa-shield:before { content: ""; }

.fa-calendar-o:before { content: ""; }

.fa-fire-extinguisher:before { content: ""; }

.fa-rocket:before { content: ""; }

.fa-maxcdn:before { content: ""; }

.fa-chevron-circle-left:before { content: ""; }

.fa-chevron-circle-right:before { content: ""; }

.fa-chevron-circle-up:before { content: ""; }

.fa-chevron-circle-down:before { content: ""; }

.fa-html5:before { content: ""; }

.fa-css3:before { content: ""; }

.fa-anchor:before { content: ""; }

.fa-unlock-alt:before { content: ""; }

.fa-bullseye:before { content: ""; }

.fa-ellipsis-h:before { content: ""; }

.fa-ellipsis-v:before { content: ""; }

.fa-rss-square:before { content: ""; }

.fa-play-circle:before { content: ""; }

.fa-ticket:before { content: ""; }

.fa-minus-square:before { content: ""; }

.fa-minus-square-o:before { content: ""; }

.fa-level-up:before { content: ""; }

.fa-level-down:before { content: ""; }

.fa-check-square:before { content: ""; }

.fa-pencil-square:before { content: ""; }

.fa-external-link-square:before { content: ""; }

.fa-share-square:before { content: ""; }

.fa-compass:before { content: ""; }

.fa-toggle-down:before, .fa-caret-square-o-down:before { content: ""; }

.fa-toggle-up:before, .fa-caret-square-o-up:before { content: ""; }

.fa-toggle-right:before, .fa-caret-square-o-right:before { content: ""; }

.fa-euro:before, .fa-eur:before { content: ""; }

.fa-gbp:before { content: ""; }

.fa-dollar:before, .fa-usd:before { content: ""; }

.fa-rupee:before, .fa-inr:before { content: ""; }

.fa-cny:before, .fa-rmb:before, .fa-yen:before, .fa-jpy:before { content: ""; }

.fa-ruble:before, .fa-rouble:before, .fa-rub:before { content: ""; }

.fa-won:before, .fa-krw:before { content: ""; }

.fa-bitcoin:before, .fa-btc:before { content: ""; }

.fa-file:before { content: ""; }

.fa-file-text:before { content: ""; }

.fa-sort-alpha-asc:before { content: ""; }

.fa-sort-alpha-desc:before { content: ""; }

.fa-sort-amount-asc:before { content: ""; }

.fa-sort-amount-desc:before { content: ""; }

.fa-sort-numeric-asc:before { content: ""; }

.fa-sort-numeric-desc:before { content: ""; }

.fa-thumbs-up:before { content: ""; }

.fa-thumbs-down:before { content: ""; }

.fa-youtube-square:before { content: ""; }

.fa-youtube:before { content: ""; }

.fa-xing:before { content: ""; }

.fa-xing-square:before { content: ""; }

.fa-youtube-play:before { content: ""; }

.fa-dropbox:before { content: ""; }

.fa-stack-overflow:before { content: ""; }

.fa-instagram:before { content: ""; }

.fa-flickr:before { content: ""; }

.fa-adn:before { content: ""; }

.fa-bitbucket:before { content: ""; }

.fa-bitbucket-square:before { content: ""; }

.fa-tumblr:before { content: ""; }

.fa-tumblr-square:before { content: ""; }

.fa-long-arrow-down:before { content: ""; }

.fa-long-arrow-up:before { content: ""; }

.fa-long-arrow-left:before { content: ""; }

.fa-long-arrow-right:before { content: ""; }

.fa-apple:before { content: ""; }

.fa-windows:before { content: ""; }

.fa-android:before { content: ""; }

.fa-linux:before { content: ""; }

.fa-dribbble:before { content: ""; }

.fa-skype:before { content: ""; }

.fa-foursquare:before { content: ""; }

.fa-trello:before { content: ""; }

.fa-female:before { content: ""; }

.fa-male:before { content: ""; }

.fa-gittip:before, .fa-gratipay:before { content: ""; }

.fa-sun-o:before { content: ""; }

.fa-moon-o:before { content: ""; }

.fa-archive:before { content: ""; }

.fa-bug:before { content: ""; }

.fa-vk:before { content: ""; }

.fa-weibo:before { content: ""; }

.fa-renren:before { content: ""; }

.fa-pagelines:before { content: ""; }

.fa-stack-exchange:before { content: ""; }

.fa-arrow-circle-o-right:before { content: ""; }

.fa-arrow-circle-o-left:before { content: ""; }

.fa-toggle-left:before, .fa-caret-square-o-left:before { content: ""; }

.fa-dot-circle-o:before { content: ""; }

.fa-wheelchair:before { content: ""; }

.fa-vimeo-square:before { content: ""; }

.fa-turkish-lira:before, .fa-try:before { content: ""; }

.fa-plus-square-o:before { content: ""; }

.fa-space-shuttle:before { content: ""; }

.fa-slack:before { content: ""; }

.fa-envelope-square:before { content: ""; }

.fa-wordpress:before { content: ""; }

.fa-openid:before { content: ""; }

.fa-institution:before, .fa-bank:before, .fa-university:before { content: ""; }

.fa-mortar-board:before, .fa-graduation-cap:before { content: ""; }

.fa-yahoo:before { content: ""; }

.fa-google:before { content: ""; }

.fa-reddit:before { content: ""; }

.fa-reddit-square:before { content: ""; }

.fa-stumbleupon-circle:before { content: ""; }

.fa-stumbleupon:before { content: ""; }

.fa-delicious:before { content: ""; }

.fa-digg:before { content: ""; }

.fa-pied-piper-pp:before { content: ""; }

.fa-pied-piper-alt:before { content: ""; }

.fa-drupal:before { content: ""; }

.fa-joomla:before { content: ""; }

.fa-language:before { content: ""; }

.fa-fax:before { content: ""; }

.fa-building:before { content: ""; }

.fa-child:before { content: ""; }

.fa-paw:before { content: ""; }

.fa-spoon:before { content: ""; }

.fa-cube:before { content: ""; }

.fa-cubes:before { content: ""; }

.fa-behance:before { content: ""; }

.fa-behance-square:before { content: ""; }

.fa-steam:before { content: ""; }

.fa-steam-square:before { content: ""; }

.fa-recycle:before { content: ""; }

.fa-automobile:before, .fa-car:before { content: ""; }

.fa-cab:before, .fa-taxi:before { content: ""; }

.fa-tree:before { content: ""; }

.fa-spotify:before { content: ""; }

.fa-deviantart:before { content: ""; }

.fa-soundcloud:before { content: ""; }

.fa-database:before { content: ""; }

.fa-file-pdf-o:before { content: ""; }

.fa-file-word-o:before { content: ""; }

.fa-file-excel-o:before { content: ""; }

.fa-file-powerpoint-o:before { content: ""; }

.fa-file-photo-o:before, .fa-file-picture-o:before, .fa-file-image-o:before { content: ""; }

.fa-file-zip-o:before, .fa-file-archive-o:before { content: ""; }

.fa-file-sound-o:before, .fa-file-audio-o:before { content: ""; }

.fa-file-movie-o:before, .fa-file-video-o:before { content: ""; }

.fa-file-code-o:before { content: ""; }

.fa-vine:before { content: ""; }

.fa-codepen:before { content: ""; }

.fa-jsfiddle:before { content: ""; }

.fa-life-bouy:before, .fa-life-buoy:before, .fa-life-saver:before, .fa-support:before, .fa-life-ring:before { content: ""; }

.fa-circle-o-notch:before { content: ""; }

.fa-ra:before, .fa-resistance:before, .fa-rebel:before { content: ""; }

.fa-ge:before, .fa-empire:before { content: ""; }

.fa-git-square:before { content: ""; }

.fa-git:before { content: ""; }

.fa-y-combinator-square:before, .fa-yc-square:before, .fa-hacker-news:before { content: ""; }

.fa-tencent-weibo:before { content: ""; }

.fa-qq:before { content: ""; }

.fa-wechat:before, .fa-weixin:before { content: ""; }

.fa-send:before, .fa-paper-plane:before { content: ""; }

.fa-send-o:before, .fa-paper-plane-o:before { content: ""; }

.fa-history:before { content: ""; }

.fa-circle-thin:before { content: ""; }

.fa-header:before { content: ""; }

.fa-paragraph:before { content: ""; }

.fa-sliders:before { content: ""; }

.fa-share-alt:before { content: ""; }

.fa-share-alt-square:before { content: ""; }

.fa-bomb:before { content: ""; }

.fa-soccer-ball-o:before, .fa-futbol-o:before { content: ""; }

.fa-tty:before { content: ""; }

.fa-binoculars:before { content: ""; }

.fa-plug:before { content: ""; }

.fa-slideshare:before { content: ""; }

.fa-twitch:before { content: ""; }

.fa-yelp:before { content: ""; }

.fa-newspaper-o:before { content: ""; }

.fa-wifi:before { content: ""; }

.fa-calculator:before { content: ""; }

.fa-paypal:before { content: ""; }

.fa-google-wallet:before { content: ""; }

.fa-cc-visa:before { content: ""; }

.fa-cc-mastercard:before { content: ""; }

.fa-cc-discover:before { content: ""; }

.fa-cc-amex:before { content: ""; }

.fa-cc-paypal:before { content: ""; }

.fa-cc-stripe:before { content: ""; }

.fa-bell-slash:before { content: ""; }

.fa-bell-slash-o:before { content: ""; }

.fa-trash:before { content: ""; }

.fa-copyright:before { content: ""; }

.fa-at:before { content: ""; }

.fa-eyedropper:before { content: ""; }

.fa-paint-brush:before { content: ""; }

.fa-birthday-cake:before { content: ""; }

.fa-area-chart:before { content: ""; }

.fa-pie-chart:before { content: ""; }

.fa-line-chart:before { content: ""; }

.fa-lastfm:before { content: ""; }

.fa-lastfm-square:before { content: ""; }

.fa-toggle-off:before { content: ""; }

.fa-toggle-on:before { content: ""; }

.fa-bicycle:before { content: ""; }

.fa-bus:before { content: ""; }

.fa-ioxhost:before { content: ""; }

.fa-angellist:before { content: ""; }

.fa-cc:before { content: ""; }

.fa-shekel:before, .fa-sheqel:before, .fa-ils:before { content: ""; }

.fa-meanpath:before { content: ""; }

.fa-buysellads:before { content: ""; }

.fa-connectdevelop:before { content: ""; }

.fa-dashcube:before { content: ""; }

.fa-forumbee:before { content: ""; }

.fa-leanpub:before { content: ""; }

.fa-sellsy:before { content: ""; }

.fa-shirtsinbulk:before { content: ""; }

.fa-simplybuilt:before { content: ""; }

.fa-skyatlas:before { content: ""; }

.fa-cart-plus:before { content: ""; }

.fa-cart-arrow-down:before { content: ""; }

.fa-diamond:before { content: ""; }

.fa-ship:before { content: ""; }

.fa-user-secret:before { content: ""; }

.fa-motorcycle:before { content: ""; }

.fa-street-view:before { content: ""; }

.fa-heartbeat:before { content: ""; }

.fa-venus:before { content: ""; }

.fa-mars:before { content: ""; }

.fa-mercury:before { content: ""; }

.fa-intersex:before, .fa-transgender:before { content: ""; }

.fa-transgender-alt:before { content: ""; }

.fa-venus-double:before { content: ""; }

.fa-mars-double:before { content: ""; }

.fa-venus-mars:before { content: ""; }

.fa-mars-stroke:before { content: ""; }

.fa-mars-stroke-v:before { content: ""; }

.fa-mars-stroke-h:before { content: ""; }

.fa-neuter:before { content: ""; }

.fa-genderless:before { content: ""; }

.fa-facebook-official:before { content: ""; }

.fa-pinterest-p:before { content: ""; }

.fa-whatsapp:before { content: ""; }

.fa-server:before { content: ""; }

.fa-user-plus:before { content: ""; }

.fa-user-times:before { content: ""; }

.fa-hotel:before, .fa-bed:before { content: ""; }

.fa-viacoin:before { content: ""; }

.fa-train:before { content: ""; }

.fa-subway:before { content: ""; }

.fa-medium:before { content: ""; }

.fa-yc:before, .fa-y-combinator:before { content: ""; }

.fa-optin-monster:before { content: ""; }

.fa-opencart:before { content: ""; }

.fa-expeditedssl:before { content: ""; }

.fa-battery-4:before, .fa-battery:before, .fa-battery-full:before { content: ""; }

.fa-battery-3:before, .fa-battery-three-quarters:before { content: ""; }

.fa-battery-2:before, .fa-battery-half:before { content: ""; }

.fa-battery-1:before, .fa-battery-quarter:before { content: ""; }

.fa-battery-0:before, .fa-battery-empty:before { content: ""; }

.fa-mouse-pointer:before { content: ""; }

.fa-i-cursor:before { content: ""; }

.fa-object-group:before { content: ""; }

.fa-object-ungroup:before { content: ""; }

.fa-sticky-note:before { content: ""; }

.fa-sticky-note-o:before { content: ""; }

.fa-cc-jcb:before { content: ""; }

.fa-cc-diners-club:before { content: ""; }

.fa-clone:before { content: ""; }

.fa-balance-scale:before { content: ""; }

.fa-hourglass-o:before { content: ""; }

.fa-hourglass-1:before, .fa-hourglass-start:before { content: ""; }

.fa-hourglass-2:before, .fa-hourglass-half:before { content: ""; }

.fa-hourglass-3:before, .fa-hourglass-end:before { content: ""; }

.fa-hourglass:before { content: ""; }

.fa-hand-grab-o:before, .fa-hand-rock-o:before { content: ""; }

.fa-hand-stop-o:before, .fa-hand-paper-o:before { content: ""; }

.fa-hand-scissors-o:before { content: ""; }

.fa-hand-lizard-o:before { content: ""; }

.fa-hand-spock-o:before { content: ""; }

.fa-hand-pointer-o:before { content: ""; }

.fa-hand-peace-o:before { content: ""; }

.fa-trademark:before { content: ""; }

.fa-registered:before { content: ""; }

.fa-creative-commons:before { content: ""; }

.fa-gg:before { content: ""; }

.fa-gg-circle:before { content: ""; }

.fa-tripadvisor:before { content: ""; }

.fa-odnoklassniki:before { content: ""; }

.fa-odnoklassniki-square:before { content: ""; }

.fa-get-pocket:before { content: ""; }

.fa-wikipedia-w:before { content: ""; }

.fa-safari:before { content: ""; }

.fa-chrome:before { content: ""; }

.fa-firefox:before { content: ""; }

.fa-opera:before { content: ""; }

.fa-internet-explorer:before { content: ""; }

.fa-tv:before, .fa-television:before { content: ""; }

.fa-contao:before { content: ""; }

.fa-500px:before { content: ""; }

.fa-amazon:before { content: ""; }

.fa-calendar-plus-o:before { content: ""; }

.fa-calendar-minus-o:before { content: ""; }

.fa-calendar-times-o:before { content: ""; }

.fa-calendar-check-o:before { content: ""; }

.fa-industry:before { content: ""; }

.fa-map-pin:before { content: ""; }

.fa-map-signs:before { content: ""; }

.fa-map-o:before { content: ""; }

.fa-map:before { content: ""; }

.fa-commenting:before { content: ""; }

.fa-commenting-o:before { content: ""; }

.fa-houzz:before { content: ""; }

.fa-vimeo:before { content: ""; }

.fa-black-tie:before { content: ""; }

.fa-fonticons:before { content: ""; }

.fa-reddit-alien:before { content: ""; }

.fa-edge:before { content: ""; }

.fa-credit-card-alt:before { content: ""; }

.fa-codiepie:before { content: ""; }

.fa-modx:before { content: ""; }

.fa-fort-awesome:before { content: ""; }

.fa-usb:before { content: ""; }

.fa-product-hunt:before { content: ""; }

.fa-mixcloud:before { content: ""; }

.fa-scribd:before { content: ""; }

.fa-pause-circle:before { content: ""; }

.fa-pause-circle-o:before { content: ""; }

.fa-stop-circle:before { content: ""; }

.fa-stop-circle-o:before { content: ""; }

.fa-shopping-bag:before { content: ""; }

.fa-shopping-basket:before { content: ""; }

.fa-hashtag:before { content: ""; }

.fa-bluetooth:before { content: ""; }

.fa-bluetooth-b:before { content: ""; }

.fa-percent:before { content: ""; }

.fa-gitlab:before { content: ""; }

.fa-wpbeginner:before { content: ""; }

.fa-wpforms:before { content: ""; }

.fa-envira:before { content: ""; }

.fa-universal-access:before { content: ""; }

.fa-wheelchair-alt:before { content: ""; }

.fa-question-circle-o:before { content: ""; }

.fa-blind:before { content: ""; }

.fa-audio-description:before { content: ""; }

.fa-volume-control-phone:before { content: ""; }

.fa-braille:before { content: ""; }

.fa-assistive-listening-systems:before { content: ""; }

.fa-asl-interpreting:before, .fa-american-sign-language-interpreting:before { content: ""; }

.fa-deafness:before, .fa-hard-of-hearing:before, .fa-deaf:before { content: ""; }

.fa-glide:before { content: ""; }

.fa-glide-g:before { content: ""; }

.fa-signing:before, .fa-sign-language:before { content: ""; }

.fa-low-vision:before { content: ""; }

.fa-viadeo:before { content: ""; }

.fa-viadeo-square:before { content: ""; }

.fa-snapchat:before { content: ""; }

.fa-snapchat-ghost:before { content: ""; }

.fa-snapchat-square:before { content: ""; }

.fa-pied-piper:before { content: ""; }

.fa-first-order:before { content: ""; }

.fa-yoast:before { content: ""; }

.fa-themeisle:before { content: ""; }

.fa-google-plus-circle:before, .fa-google-plus-official:before { content: ""; }

.fa-fa:before, .fa-font-awesome:before { content: ""; }

.fa-handshake-o:before { content: ""; }

.fa-envelope-open:before { content: ""; }

.fa-envelope-open-o:before { content: ""; }

.fa-linode:before { content: ""; }

.fa-address-book:before { content: ""; }

.fa-address-book-o:before { content: ""; }

.fa-vcard:before, .fa-address-card:before { content: ""; }

.fa-vcard-o:before, .fa-address-card-o:before { content: ""; }

.fa-user-circle:before { content: ""; }

.fa-user-circle-o:before { content: ""; }

.fa-user-o:before { content: ""; }

.fa-id-badge:before { content: ""; }

.fa-drivers-license:before, .fa-id-card:before { content: ""; }

.fa-drivers-license-o:before, .fa-id-card-o:before { content: ""; }

.fa-quora:before { content: ""; }

.fa-free-code-camp:before { content: ""; }

.fa-telegram:before { content: ""; }

.fa-thermometer-4:before, .fa-thermometer:before, .fa-thermometer-full:before { content: ""; }

.fa-thermometer-3:before, .fa-thermometer-three-quarters:before { content: ""; }

.fa-thermometer-2:before, .fa-thermometer-half:before { content: ""; }

.fa-thermometer-1:before, .fa-thermometer-quarter:before { content: ""; }

.fa-thermometer-0:before, .fa-thermometer-empty:before { content: ""; }

.fa-shower:before { content: ""; }

.fa-bathtub:before, .fa-s15:before, .fa-bath:before { content: ""; }

.fa-podcast:before { content: ""; }

.fa-window-maximize:before { content: ""; }

.fa-window-minimize:before { content: ""; }

.fa-window-restore:before { content: ""; }

.fa-times-rectangle:before, .fa-window-close:before { content: ""; }

.fa-times-rectangle-o:before, .fa-window-close-o:before { content: ""; }

.fa-bandcamp:before { content: ""; }

.fa-grav:before { content: ""; }

.fa-etsy:before { content: ""; }

.fa-imdb:before { content: ""; }

.fa-ravelry:before { content: ""; }

.fa-eercast:before { content: ""; }

.fa-microchip:before { content: ""; }

.fa-snowflake-o:before { content: ""; }

.fa-superpowers:before { content: ""; }

.fa-wpexplorer:before { content: ""; }

.fa-meetup:before { content: ""; }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; }

/* stylelint-disable font-family-no-missing-generic-family-keyword */
@font-face { font-family: 'KaTeX_AMS'; src: url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"), url(fonts/KaTeX_AMS-Regular.woff) format("woff"), url(fonts/KaTeX_AMS-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Caligraphic'; src: url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"), url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"), url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype"); font-weight: bold; font-style: normal; }

@font-face { font-family: 'KaTeX_Caligraphic'; src: url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"), url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"), url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Fraktur'; src: url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"), url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"), url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype"); font-weight: bold; font-style: normal; }

@font-face { font-family: 'KaTeX_Fraktur'; src: url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"), url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"), url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Main'; src: url(fonts/KaTeX_Main-Bold.woff2) format("woff2"), url(fonts/KaTeX_Main-Bold.woff) format("woff"), url(fonts/KaTeX_Main-Bold.ttf) format("truetype"); font-weight: bold; font-style: normal; }

@font-face { font-family: 'KaTeX_Main'; src: url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"), url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"), url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype"); font-weight: bold; font-style: italic; }

@font-face { font-family: 'KaTeX_Main'; src: url(fonts/KaTeX_Main-Italic.woff2) format("woff2"), url(fonts/KaTeX_Main-Italic.woff) format("woff"), url(fonts/KaTeX_Main-Italic.ttf) format("truetype"); font-weight: normal; font-style: italic; }

@font-face { font-family: 'KaTeX_Main'; src: url(fonts/KaTeX_Main-Regular.woff2) format("woff2"), url(fonts/KaTeX_Main-Regular.woff) format("woff"), url(fonts/KaTeX_Main-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Math'; src: url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"), url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"), url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype"); font-weight: bold; font-style: italic; }

@font-face { font-family: 'KaTeX_Math'; src: url(fonts/KaTeX_Math-Italic.woff2) format("woff2"), url(fonts/KaTeX_Math-Italic.woff) format("woff"), url(fonts/KaTeX_Math-Italic.ttf) format("truetype"); font-weight: normal; font-style: italic; }

@font-face { font-family: 'KaTeX_SansSerif'; src: url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"), url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"), url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype"); font-weight: bold; font-style: normal; }

@font-face { font-family: 'KaTeX_SansSerif'; src: url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"), url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"), url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype"); font-weight: normal; font-style: italic; }

@font-face { font-family: 'KaTeX_SansSerif'; src: url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"), url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"), url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Script'; src: url(fonts/KaTeX_Script-Regular.woff2) format("woff2"), url(fonts/KaTeX_Script-Regular.woff) format("woff"), url(fonts/KaTeX_Script-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Size1'; src: url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"), url(fonts/KaTeX_Size1-Regular.woff) format("woff"), url(fonts/KaTeX_Size1-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Size2'; src: url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"), url(fonts/KaTeX_Size2-Regular.woff) format("woff"), url(fonts/KaTeX_Size2-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Size3'; src: url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"), url(fonts/KaTeX_Size3-Regular.woff) format("woff"), url(fonts/KaTeX_Size3-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Size4'; src: url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"), url(fonts/KaTeX_Size4-Regular.woff) format("woff"), url(fonts/KaTeX_Size4-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: 'KaTeX_Typewriter'; src: url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"), url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"), url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype"); font-weight: normal; font-style: normal; }

.katex { font: normal 1.21em KaTeX_Main, Times New Roman, serif; line-height: 1.2; text-indent: 0; text-rendering: auto; border-color: currentColor; }

.katex * { -ms-high-contrast-adjust: none !important; }

.katex .katex-version::after { content: "0.13.0"; }

.katex .katex-mathml { /* Accessibility hack to only show to screen readers Found at: http://a11yproject.com/posts/how-to-hide-content/ */ position: absolute; clip: rect(1px, 1px, 1px, 1px); padding: 0; border: 0; height: 1px; width: 1px; overflow: hidden; }

.katex .katex-html { /* \newline is an empty block at top level, between .base elements */ }

.katex .katex-html > .newline { display: block; }

.katex .base { position: relative; display: inline-block; white-space: nowrap; width: -webkit-min-content; width: -moz-min-content; width: min-content; }

.katex .strut { display: inline-block; }

.katex .textbf { font-weight: bold; }

.katex .textit { font-style: italic; }

.katex .textrm { font-family: KaTeX_Main; }

.katex .textsf { font-family: KaTeX_SansSerif; }

.katex .texttt { font-family: KaTeX_Typewriter; }

.katex .mathnormal { font-family: KaTeX_Math; font-style: italic; }

.katex .mathit { font-family: KaTeX_Main; font-style: italic; }

.katex .mathrm { font-style: normal; }

.katex .mathbf { font-family: KaTeX_Main; font-weight: bold; }

.katex .boldsymbol { font-family: KaTeX_Math; font-weight: bold; font-style: italic; }

.katex .amsrm { font-family: KaTeX_AMS; }

.katex .mathbb, .katex .textbb { font-family: KaTeX_AMS; }

.katex .mathcal { font-family: KaTeX_Caligraphic; }

.katex .mathfrak, .katex .textfrak { font-family: KaTeX_Fraktur; }

.katex .mathtt { font-family: KaTeX_Typewriter; }

.katex .mathscr, .katex .textscr { font-family: KaTeX_Script; }

.katex .mathsf, .katex .textsf { font-family: KaTeX_SansSerif; }

.katex .mathboldsf, .katex .textboldsf { font-family: KaTeX_SansSerif; font-weight: bold; }

.katex .mathitsf, .katex .textitsf { font-family: KaTeX_SansSerif; font-style: italic; }

.katex .mainrm { font-family: KaTeX_Main; font-style: normal; }

.katex .vlist-t { display: inline-table; table-layout: fixed; border-collapse: collapse; }

.katex .vlist-r { display: table-row; }

.katex .vlist { display: table-cell; vertical-align: bottom; position: relative; }

.katex .vlist > span { display: block; height: 0; position: relative; }

.katex .vlist > span > span { display: inline-block; }

.katex .vlist > span > .pstrut { overflow: hidden; width: 0; }

.katex .vlist-t2 { margin-right: -2px; }

.katex .vlist-s { display: table-cell; vertical-align: bottom; font-size: 1px; width: 2px; min-width: 2px; }

.katex .vbox { display: inline-flex; flex-direction: column; align-items: baseline; }

.katex .hbox { display: inline-flex; flex-direction: row; width: 100%; }

.katex .thinbox { display: inline-flex; flex-direction: row; width: 0; max-width: 0; }

.katex .msupsub { text-align: left; }

.katex .mfrac > span > span { text-align: center; }

.katex .mfrac .frac-line { display: inline-block; width: 100%; border-bottom-style: solid; }

.katex .mfrac .frac-line, .katex .overline .overline-line, .katex .underline .underline-line, .katex .hline, .katex .hdashline, .katex .rule { min-height: 1px; }

.katex .mspace { display: inline-block; }

.katex .llap, .katex .rlap, .katex .clap { width: 0; position: relative; }

.katex .llap > .inner, .katex .rlap > .inner, .katex .clap > .inner { position: absolute; }

.katex .llap > .fix, .katex .rlap > .fix, .katex .clap > .fix { display: inline-block; }

.katex .llap > .inner { right: 0; }

.katex .rlap > .inner, .katex .clap > .inner { left: 0; }

.katex .clap > .inner > span { margin-left: -50%; margin-right: 50%; }

.katex .rule { display: inline-block; border: solid 0; position: relative; }

.katex .overline .overline-line, .katex .underline .underline-line, .katex .hline { display: inline-block; width: 100%; border-bottom-style: solid; }

.katex .hdashline { display: inline-block; width: 100%; border-bottom-style: dashed; }

.katex .sqrt > .root { /* These values are taken from the definition of `\r@@t`, `\mkern 5mu` and `\mkern -10mu`. */ margin-left: 0.27777778em; margin-right: -0.55555556em; }

.katex .sizing.reset-size1.size1, .katex .fontsize-ensurer.reset-size1.size1 { font-size: 1em; }

.katex .sizing.reset-size1.size2, .katex .fontsize-ensurer.reset-size1.size2 { font-size: 1.2em; }

.katex .sizing.reset-size1.size3, .katex .fontsize-ensurer.reset-size1.size3 { font-size: 1.4em; }

.katex .sizing.reset-size1.size4, .katex .fontsize-ensurer.reset-size1.size4 { font-size: 1.6em; }

.katex .sizing.reset-size1.size5, .katex .fontsize-ensurer.reset-size1.size5 { font-size: 1.8em; }

.katex .sizing.reset-size1.size6, .katex .fontsize-ensurer.reset-size1.size6 { font-size: 2em; }

.katex .sizing.reset-size1.size7, .katex .fontsize-ensurer.reset-size1.size7 { font-size: 2.4em; }

.katex .sizing.reset-size1.size8, .katex .fontsize-ensurer.reset-size1.size8 { font-size: 2.88em; }

.katex .sizing.reset-size1.size9, .katex .fontsize-ensurer.reset-size1.size9 { font-size: 3.456em; }

.katex .sizing.reset-size1.size10, .katex .fontsize-ensurer.reset-size1.size10 { font-size: 4.148em; }

.katex .sizing.reset-size1.size11, .katex .fontsize-ensurer.reset-size1.size11 { font-size: 4.976em; }

.katex .sizing.reset-size2.size1, .katex .fontsize-ensurer.reset-size2.size1 { font-size: 0.83333333em; }

.katex .sizing.reset-size2.size2, .katex .fontsize-ensurer.reset-size2.size2 { font-size: 1em; }

.katex .sizing.reset-size2.size3, .katex .fontsize-ensurer.reset-size2.size3 { font-size: 1.16666667em; }

.katex .sizing.reset-size2.size4, .katex .fontsize-ensurer.reset-size2.size4 { font-size: 1.33333333em; }

.katex .sizing.reset-size2.size5, .katex .fontsize-ensurer.reset-size2.size5 { font-size: 1.5em; }

.katex .sizing.reset-size2.size6, .katex .fontsize-ensurer.reset-size2.size6 { font-size: 1.66666667em; }

.katex .sizing.reset-size2.size7, .katex .fontsize-ensurer.reset-size2.size7 { font-size: 2em; }

.katex .sizing.reset-size2.size8, .katex .fontsize-ensurer.reset-size2.size8 { font-size: 2.4em; }

.katex .sizing.reset-size2.size9, .katex .fontsize-ensurer.reset-size2.size9 { font-size: 2.88em; }

.katex .sizing.reset-size2.size10, .katex .fontsize-ensurer.reset-size2.size10 { font-size: 3.45666667em; }

.katex .sizing.reset-size2.size11, .katex .fontsize-ensurer.reset-size2.size11 { font-size: 4.14666667em; }

.katex .sizing.reset-size3.size1, .katex .fontsize-ensurer.reset-size3.size1 { font-size: 0.71428571em; }

.katex .sizing.reset-size3.size2, .katex .fontsize-ensurer.reset-size3.size2 { font-size: 0.85714286em; }

.katex .sizing.reset-size3.size3, .katex .fontsize-ensurer.reset-size3.size3 { font-size: 1em; }

.katex .sizing.reset-size3.size4, .katex .fontsize-ensurer.reset-size3.size4 { font-size: 1.14285714em; }

.katex .sizing.reset-size3.size5, .katex .fontsize-ensurer.reset-size3.size5 { font-size: 1.28571429em; }

.katex .sizing.reset-size3.size6, .katex .fontsize-ensurer.reset-size3.size6 { font-size: 1.42857143em; }

.katex .sizing.reset-size3.size7, .katex .fontsize-ensurer.reset-size3.size7 { font-size: 1.71428571em; }

.katex .sizing.reset-size3.size8, .katex .fontsize-ensurer.reset-size3.size8 { font-size: 2.05714286em; }

.katex .sizing.reset-size3.size9, .katex .fontsize-ensurer.reset-size3.size9 { font-size: 2.46857143em; }

.katex .sizing.reset-size3.size10, .katex .fontsize-ensurer.reset-size3.size10 { font-size: 2.96285714em; }

.katex .sizing.reset-size3.size11, .katex .fontsize-ensurer.reset-size3.size11 { font-size: 3.55428571em; }

.katex .sizing.reset-size4.size1, .katex .fontsize-ensurer.reset-size4.size1 { font-size: 0.625em; }

.katex .sizing.reset-size4.size2, .katex .fontsize-ensurer.reset-size4.size2 { font-size: 0.75em; }

.katex .sizing.reset-size4.size3, .katex .fontsize-ensurer.reset-size4.size3 { font-size: 0.875em; }

.katex .sizing.reset-size4.size4, .katex .fontsize-ensurer.reset-size4.size4 { font-size: 1em; }

.katex .sizing.reset-size4.size5, .katex .fontsize-ensurer.reset-size4.size5 { font-size: 1.125em; }

.katex .sizing.reset-size4.size6, .katex .fontsize-ensurer.reset-size4.size6 { font-size: 1.25em; }

.katex .sizing.reset-size4.size7, .katex .fontsize-ensurer.reset-size4.size7 { font-size: 1.5em; }

.katex .sizing.reset-size4.size8, .katex .fontsize-ensurer.reset-size4.size8 { font-size: 1.8em; }

.katex .sizing.reset-size4.size9, .katex .fontsize-ensurer.reset-size4.size9 { font-size: 2.16em; }

.katex .sizing.reset-size4.size10, .katex .fontsize-ensurer.reset-size4.size10 { font-size: 2.5925em; }

.katex .sizing.reset-size4.size11, .katex .fontsize-ensurer.reset-size4.size11 { font-size: 3.11em; }

.katex .sizing.reset-size5.size1, .katex .fontsize-ensurer.reset-size5.size1 { font-size: 0.55555556em; }

.katex .sizing.reset-size5.size2, .katex .fontsize-ensurer.reset-size5.size2 { font-size: 0.66666667em; }

.katex .sizing.reset-size5.size3, .katex .fontsize-ensurer.reset-size5.size3 { font-size: 0.77777778em; }

.katex .sizing.reset-size5.size4, .katex .fontsize-ensurer.reset-size5.size4 { font-size: 0.88888889em; }

.katex .sizing.reset-size5.size5, .katex .fontsize-ensurer.reset-size5.size5 { font-size: 1em; }

.katex .sizing.reset-size5.size6, .katex .fontsize-ensurer.reset-size5.size6 { font-size: 1.11111111em; }

.katex .sizing.reset-size5.size7, .katex .fontsize-ensurer.reset-size5.size7 { font-size: 1.33333333em; }

.katex .sizing.reset-size5.size8, .katex .fontsize-ensurer.reset-size5.size8 { font-size: 1.6em; }

.katex .sizing.reset-size5.size9, .katex .fontsize-ensurer.reset-size5.size9 { font-size: 1.92em; }

.katex .sizing.reset-size5.size10, .katex .fontsize-ensurer.reset-size5.size10 { font-size: 2.30444444em; }

.katex .sizing.reset-size5.size11, .katex .fontsize-ensurer.reset-size5.size11 { font-size: 2.76444444em; }

.katex .sizing.reset-size6.size1, .katex .fontsize-ensurer.reset-size6.size1 { font-size: 0.5em; }

.katex .sizing.reset-size6.size2, .katex .fontsize-ensurer.reset-size6.size2 { font-size: 0.6em; }

.katex .sizing.reset-size6.size3, .katex .fontsize-ensurer.reset-size6.size3 { font-size: 0.7em; }

.katex .sizing.reset-size6.size4, .katex .fontsize-ensurer.reset-size6.size4 { font-size: 0.8em; }

.katex .sizing.reset-size6.size5, .katex .fontsize-ensurer.reset-size6.size5 { font-size: 0.9em; }

.katex .sizing.reset-size6.size6, .katex .fontsize-ensurer.reset-size6.size6 { font-size: 1em; }

.katex .sizing.reset-size6.size7, .katex .fontsize-ensurer.reset-size6.size7 { font-size: 1.2em; }

.katex .sizing.reset-size6.size8, .katex .fontsize-ensurer.reset-size6.size8 { font-size: 1.44em; }

.katex .sizing.reset-size6.size9, .katex .fontsize-ensurer.reset-size6.size9 { font-size: 1.728em; }

.katex .sizing.reset-size6.size10, .katex .fontsize-ensurer.reset-size6.size10 { font-size: 2.074em; }

.katex .sizing.reset-size6.size11, .katex .fontsize-ensurer.reset-size6.size11 { font-size: 2.488em; }

.katex .sizing.reset-size7.size1, .katex .fontsize-ensurer.reset-size7.size1 { font-size: 0.41666667em; }

.katex .sizing.reset-size7.size2, .katex .fontsize-ensurer.reset-size7.size2 { font-size: 0.5em; }

.katex .sizing.reset-size7.size3, .katex .fontsize-ensurer.reset-size7.size3 { font-size: 0.58333333em; }

.katex .sizing.reset-size7.size4, .katex .fontsize-ensurer.reset-size7.size4 { font-size: 0.66666667em; }

.katex .sizing.reset-size7.size5, .katex .fontsize-ensurer.reset-size7.size5 { font-size: 0.75em; }

.katex .sizing.reset-size7.size6, .katex .fontsize-ensurer.reset-size7.size6 { font-size: 0.83333333em; }

.katex .sizing.reset-size7.size7, .katex .fontsize-ensurer.reset-size7.size7 { font-size: 1em; }

.katex .sizing.reset-size7.size8, .katex .fontsize-ensurer.reset-size7.size8 { font-size: 1.2em; }

.katex .sizing.reset-size7.size9, .katex .fontsize-ensurer.reset-size7.size9 { font-size: 1.44em; }

.katex .sizing.reset-size7.size10, .katex .fontsize-ensurer.reset-size7.size10 { font-size: 1.72833333em; }

.katex .sizing.reset-size7.size11, .katex .fontsize-ensurer.reset-size7.size11 { font-size: 2.07333333em; }

.katex .sizing.reset-size8.size1, .katex .fontsize-ensurer.reset-size8.size1 { font-size: 0.34722222em; }

.katex .sizing.reset-size8.size2, .katex .fontsize-ensurer.reset-size8.size2 { font-size: 0.41666667em; }

.katex .sizing.reset-size8.size3, .katex .fontsize-ensurer.reset-size8.size3 { font-size: 0.48611111em; }

.katex .sizing.reset-size8.size4, .katex .fontsize-ensurer.reset-size8.size4 { font-size: 0.55555556em; }

.katex .sizing.reset-size8.size5, .katex .fontsize-ensurer.reset-size8.size5 { font-size: 0.625em; }

.katex .sizing.reset-size8.size6, .katex .fontsize-ensurer.reset-size8.size6 { font-size: 0.69444444em; }

.katex .sizing.reset-size8.size7, .katex .fontsize-ensurer.reset-size8.size7 { font-size: 0.83333333em; }

.katex .sizing.reset-size8.size8, .katex .fontsize-ensurer.reset-size8.size8 { font-size: 1em; }

.katex .sizing.reset-size8.size9, .katex .fontsize-ensurer.reset-size8.size9 { font-size: 1.2em; }

.katex .sizing.reset-size8.size10, .katex .fontsize-ensurer.reset-size8.size10 { font-size: 1.44027778em; }

.katex .sizing.reset-size8.size11, .katex .fontsize-ensurer.reset-size8.size11 { font-size: 1.72777778em; }

.katex .sizing.reset-size9.size1, .katex .fontsize-ensurer.reset-size9.size1 { font-size: 0.28935185em; }

.katex .sizing.reset-size9.size2, .katex .fontsize-ensurer.reset-size9.size2 { font-size: 0.34722222em; }

.katex .sizing.reset-size9.size3, .katex .fontsize-ensurer.reset-size9.size3 { font-size: 0.40509259em; }

.katex .sizing.reset-size9.size4, .katex .fontsize-ensurer.reset-size9.size4 { font-size: 0.46296296em; }

.katex .sizing.reset-size9.size5, .katex .fontsize-ensurer.reset-size9.size5 { font-size: 0.52083333em; }

.katex .sizing.reset-size9.size6, .katex .fontsize-ensurer.reset-size9.size6 { font-size: 0.5787037em; }

.katex .sizing.reset-size9.size7, .katex .fontsize-ensurer.reset-size9.size7 { font-size: 0.69444444em; }

.katex .sizing.reset-size9.size8, .katex .fontsize-ensurer.reset-size9.size8 { font-size: 0.83333333em; }

.katex .sizing.reset-size9.size9, .katex .fontsize-ensurer.reset-size9.size9 { font-size: 1em; }

.katex .sizing.reset-size9.size10, .katex .fontsize-ensurer.reset-size9.size10 { font-size: 1.20023148em; }

.katex .sizing.reset-size9.size11, .katex .fontsize-ensurer.reset-size9.size11 { font-size: 1.43981481em; }

.katex .sizing.reset-size10.size1, .katex .fontsize-ensurer.reset-size10.size1 { font-size: 0.24108004em; }

.katex .sizing.reset-size10.size2, .katex .fontsize-ensurer.reset-size10.size2 { font-size: 0.28929605em; }

.katex .sizing.reset-size10.size3, .katex .fontsize-ensurer.reset-size10.size3 { font-size: 0.33751205em; }

.katex .sizing.reset-size10.size4, .katex .fontsize-ensurer.reset-size10.size4 { font-size: 0.38572806em; }

.katex .sizing.reset-size10.size5, .katex .fontsize-ensurer.reset-size10.size5 { font-size: 0.43394407em; }

.katex .sizing.reset-size10.size6, .katex .fontsize-ensurer.reset-size10.size6 { font-size: 0.48216008em; }

.katex .sizing.reset-size10.size7, .katex .fontsize-ensurer.reset-size10.size7 { font-size: 0.57859209em; }

.katex .sizing.reset-size10.size8, .katex .fontsize-ensurer.reset-size10.size8 { font-size: 0.69431051em; }

.katex .sizing.reset-size10.size9, .katex .fontsize-ensurer.reset-size10.size9 { font-size: 0.83317261em; }

.katex .sizing.reset-size10.size10, .katex .fontsize-ensurer.reset-size10.size10 { font-size: 1em; }

.katex .sizing.reset-size10.size11, .katex .fontsize-ensurer.reset-size10.size11 { font-size: 1.19961427em; }

.katex .sizing.reset-size11.size1, .katex .fontsize-ensurer.reset-size11.size1 { font-size: 0.20096463em; }

.katex .sizing.reset-size11.size2, .katex .fontsize-ensurer.reset-size11.size2 { font-size: 0.24115756em; }

.katex .sizing.reset-size11.size3, .katex .fontsize-ensurer.reset-size11.size3 { font-size: 0.28135048em; }

.katex .sizing.reset-size11.size4, .katex .fontsize-ensurer.reset-size11.size4 { font-size: 0.32154341em; }

.katex .sizing.reset-size11.size5, .katex .fontsize-ensurer.reset-size11.size5 { font-size: 0.36173633em; }

.katex .sizing.reset-size11.size6, .katex .fontsize-ensurer.reset-size11.size6 { font-size: 0.40192926em; }

.katex .sizing.reset-size11.size7, .katex .fontsize-ensurer.reset-size11.size7 { font-size: 0.48231511em; }

.katex .sizing.reset-size11.size8, .katex .fontsize-ensurer.reset-size11.size8 { font-size: 0.57877814em; }

.katex .sizing.reset-size11.size9, .katex .fontsize-ensurer.reset-size11.size9 { font-size: 0.69453376em; }

.katex .sizing.reset-size11.size10, .katex .fontsize-ensurer.reset-size11.size10 { font-size: 0.83360129em; }

.katex .sizing.reset-size11.size11, .katex .fontsize-ensurer.reset-size11.size11 { font-size: 1em; }

.katex .delimsizing.size1 { font-family: KaTeX_Size1; }

.katex .delimsizing.size2 { font-family: KaTeX_Size2; }

.katex .delimsizing.size3 { font-family: KaTeX_Size3; }

.katex .delimsizing.size4 { font-family: KaTeX_Size4; }

.katex .delimsizing.mult .delim-size1 > span { font-family: KaTeX_Size1; }

.katex .delimsizing.mult .delim-size4 > span { font-family: KaTeX_Size4; }

.katex .nulldelimiter { display: inline-block; width: 0.12em; }

.katex .delimcenter { position: relative; }

.katex .op-symbol { position: relative; }

.katex .op-symbol.small-op { font-family: KaTeX_Size1; }

.katex .op-symbol.large-op { font-family: KaTeX_Size2; }

.katex .op-limits > .vlist-t { text-align: center; }

.katex .accent > .vlist-t { text-align: center; }

.katex .accent .accent-body { position: relative; }

.katex .accent .accent-body:not(.accent-full) { width: 0; }

.katex .overlay { display: block; }

.katex .mtable .vertical-separator { display: inline-block; min-width: 1px; }

.katex .mtable .arraycolsep { display: inline-block; }

.katex .mtable .col-align-c > .vlist-t { text-align: center; }

.katex .mtable .col-align-l > .vlist-t { text-align: left; }

.katex .mtable .col-align-r > .vlist-t { text-align: right; }

.katex .svg-align { text-align: left; }

.katex svg { display: block; position: absolute; width: 100%; height: inherit; fill: currentColor; stroke: currentColor; fill-rule: nonzero; fill-opacity: 1; stroke-width: 1; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 4; stroke-dasharray: none; stroke-dashoffset: 0; stroke-opacity: 1; }

.katex svg path { stroke: none; }

.katex img { border-style: none; min-width: 0; min-height: 0; max-width: none; max-height: none; }

.katex .stretchy { width: 100%; display: block; position: relative; overflow: hidden; }

.katex .stretchy::before, .katex .stretchy::after { content: ""; }

.katex .hide-tail { width: 100%; position: relative; overflow: hidden; }

.katex .halfarrow-left { position: absolute; left: 0; width: 50.2%; overflow: hidden; }

.katex .halfarrow-right { position: absolute; right: 0; width: 50.2%; overflow: hidden; }

.katex .brace-left { position: absolute; left: 0; width: 25.1%; overflow: hidden; }

.katex .brace-center { position: absolute; left: 25%; width: 50%; overflow: hidden; }

.katex .brace-right { position: absolute; right: 0; width: 25.1%; overflow: hidden; }

.katex .x-arrow-pad { padding: 0 0.5em; }

.katex .cd-arrow-pad { padding: 0 0.55556em 0 0.27778em; }

.katex .x-arrow, .katex .mover, .katex .munder { text-align: center; }

.katex .boxpad { padding: 0 0.3em 0 0.3em; }

.katex .fbox, .katex .fcolorbox { box-sizing: border-box; border: 0.04em solid; }

.katex .cancel-pad { padding: 0 0.2em 0 0.2em; }

.katex .cancel-lap { margin-left: -0.2em; margin-right: -0.2em; }

.katex .sout { border-bottom-style: solid; border-bottom-width: 0.08em; }

.katex .angl { box-sizing: border-content; border-top: 0.049em solid; border-right: 0.049em solid; margin-right: 0.03889em; }

.katex .anglpad { padding: 0 0.03889em 0 0.03889em; }

.katex .eqn-num::before { counter-increment: katexEqnNo; content: "(" counter(katexEqnNo) ")"; }

.katex .mml-eqn-num::before { counter-increment: mmlEqnNo; content: "(" counter(mmlEqnNo) ")"; }

.katex .mtr-glue { width: 50%; }

.katex .cd-vert-arrow { display: inline-block; position: relative; }

.katex .cd-label-left { display: inline-block; position: absolute; right: calc(50% + 0.3em); text-align: left; }

.katex .cd-label-right { display: inline-block; position: absolute; left: calc(50% + 0.3em); text-align: right; }

.katex-display { display: block; margin: 1em 0; text-align: center; }

.katex-display > .katex { display: block; text-align: center; white-space: nowrap; }

.katex-display > .katex > .katex-html { display: block; position: relative; }

.katex-display > .katex > .katex-html > .tag { position: absolute; right: 0; }

.katex-display.leqno > .katex > .katex-html > .tag { left: 0; right: auto; }

.katex-display.fleqn > .katex { text-align: left; padding-left: 2em; }

body { counter-reset: katexEqnNo mmlEqnNo; }

/* ================================================================= 1. THEME ENGINE: CSS VARIABLE DEFINITIONS ================================================================= */
:root { /* This is LIGHT mode (Updated Professional Gold Palette) */ --bs-primary: #C19D3F; /* Professional Light Gold - Accessible on white (updated from #B8860B) */ --bs-primary-rgb: 193, 157, 63; --bs-link-color: var(--bs-primary); --bs-link-hover-color: #DDAA33; /* Slightly brighter gold on hover */ --bs-dark: #222222; --bs-body-font-weight: 700; /* BOLD weight for Light Mode readability */ --bs-body-text-shadow: none; /* DISABLED shadow for Light Mode */ --navbar-bg: #f8f8f8; --navbar-border: #e7e7e7; --blockquote-border: #e7e7e7; --footer-text: #333; --footer-link-secondary: #666; --image-shadow: rgba(0, 0, 0, 0.1); --scroll-top-bg: #333; --scroll-top-color: #fff; --code-snippet-border: #ddd; --code-type-bg: #f0f0f0; --bs-nav-pills-link-active-bg: var(--bs-primary); /* Uses new primary gold */ --bs-nav-pills-link-active-color: var(--bs-dark); /* FIXED: Use dark text for gold bg */ }

[data-bs-theme="dark"] { /* This is DARK mode (Updated Professional Gold Palette) */ --bs-body-bg: #333333; --bs-body-color: #DDDDDD; --bs-card-bg: #444444; --bs-border-color: #444; --bs-dark: #222222; --bs-body-font-weight: 300; --bs-body-text-shadow: 0 1px 3px rgba(0,0,0,.5); --bs-primary: #C5A335; /* UPDATED: Professional Gold (from #FFCC00) */ --bs-primary-rgb: 197, 163, 53; --bs-link-color: var(--bs-primary); --bs-link-hover-color: #A3842C; /* Darker shade of new gold for hover (from #FF9900) */ --navbar-bg: #2D2D2D; /* Darker than body for header/footer */ --navbar-border: var(--bs-border-color); --blockquote-border: var(--bs-border-color-translucent); --footer-text: var(--bs-body-color); --footer-link-secondary: var(--bs-secondary-color); --image-shadow: rgba(255, 255, 255, 0.05); --scroll-top-bg: var(--bs-primary); --scroll-top-color: var(--bs-dark); --code-snippet-border: var(--bs-border-color); --code-type-bg: var(--bs-body-bg); --bs-nav-pills-link-active-bg: var(--bs-primary); /* New Gold */ --bs-nav-pills-link-active-color: var(--bs-dark); /* Dark text on bright background */ }

[data-bs-theme="dark"] .post-content h1, [data-bs-theme="dark"] .post-content h2, [data-bs-theme="dark"] .post-content h3, [data-bs-theme="dark"] .post-content h4, [data-bs-theme="dark"] .post-content h5, [data-bs-theme="dark"] .post-content h6 { color: var(--bs-body-color); }

/* ================================================================= 2. REFACTORED GENERAL STYLES ================================================================= */
.reduced-gutter.row { margin-right: -10px; margin-left: -10px; }

.reduced-gutter { padding-right: 10px; padding-left: 10px; }

/* typekit */
.wf-loading { visibility: hidden; }

.wf-active { visibility: visible; }

/* general */
.container { padding-left: 25px; padding-right: 25px; }

.center { float: none; margin-left: auto; margin-right: auto; }

.text-center { text-align: center; }

b, strong { font-weight: bold; }

/* logo */
.logo { width: 120px; height: auto; }

.biglogo { width: 180px; height: auto; padding: 0px; }

.logobox { height: auto; display: table-cell; vertical-align: middle; }

/* ================================================================= 3. REFACTORED NAVBAR (RESIZE FIX) ================================================================= */
.navbar-brand { font-size: 30px; font-weight: 100; color: var(--bs-secondary-color); }

.navbar-nav { font-size: 1rem; font-weight: 100; }

.navbar-text { font-size: 15px; font-weight: 300; }

.bg-navbar { background: var(--navbar-bg); border-bottom: 1px solid var(--navbar-border); }

.nav-brand a { color: var(--bs-primary); }

.nav-brand a:hover { color: var(--bs-primary); text-decoration: none; }

.nav-link a { color: var(--bs-secondary-color); }

.nav-link a:hover { color: var(--bs-primary); text-decoration: none; }

.navbar-toggler { margin-top: 14px; margin-bottom: 14px; }

/* ================================================================= 4. REFACTORED TYPOGRAPHY & HEADINGS ================================================================= */
.bigtitle { font-size: 44px; line-height: 55px; font-weight: 100; }

.title { font-size: 34px; line-height: 40px; font-weight: 100; }

.bighead { font-size: 32px; font-weight: 300; line-height: 36px; }

.head { font-size: 24px; font-weight: 300; line-height: 30px; }

.smallhead { font-size: 19px; font-weight: 300; line-height: 23px; }

.note, .footernav { font-size: 15px; font-weight: 300; line-height: 18px; }

.smallnote { font-size: 13px; font-weight: 300; line-height: 16px; }

.text-gray { color: var(--bs-secondary-color); }

.text-dark-gray { color: var(--bs-tertiary-color); }

.text-figure-legend { font-weight: 700; font-size: 13px; }

h1, .h1 { font-size: 2rem; font-weight: 300; margin-top: 2rem; margin-bottom: 1rem; }

h2, .h2 { font-size: 2rem; font-weight: 300; margin-top: 2rem; margin-bottom: 1rem; }

h3, .h3 { font-size: 2rem; font-weight: 300; margin-top: 2rem; margin-bottom: 1rem; }

h4, .h4 { font-size: 2rem; font-weight: 300; margin-top: 2rem; margin-bottom: 1rem; }

h5, .h5 { font-size: 1rem; font-weight: 300; margin-top: 2rem; margin-bottom: 1rem; }

h6, .h6 { font-size: 1rem; font-weight: 300; margin-top: 2rem; margin-bottom: 1rem; }

.post h1, .post h2, .post h3, .post h4, .post h5, .post h6 { font-family: inherit; font-weight: 500; line-height: 1.2; margin-top: 2rem; margin-bottom: 0.5rem; }

.post h1 { font-size: 2.5rem; }

.post h2 { font-size: 2rem; }

.post h3 { font-size: 1.75rem; }

.post h4 { font-size: 1.5rem; }

.post h5 { font-size: 1.25rem; }

.post h6 { font-size: 1rem; }

.post-content h1, .post-content h2, .post-content h3, .post-content h4, .post-content h5, .post-content h6 { color: var(--bs-primary); }

/* ================================================================= 5. REFACTORED OTHER COMPONENTS ================================================================= */
body { font-weight: var(--bs-body-font-weight) !important; font-family: 'Lato', 'Open Sans', 'Helvetica Neue', Arial, sans-serif !important; text-shadow: var(--bs-body-text-shadow, none); }

p { font-weight: var(--bs-body-font-weight) !important; line-height: 1.5em; }

.hugespacer { height: 50px; }

.bigspacer { height: 20px; }

.spacer { height: 10px; }

.smallspacer { height: 5px; }

a.off { color: inherit; }

pre { overflow-x: auto; border: 1px solid var(--bs-border-color); border-radius: 4px; padding: 10px; }

pre code { overflow-wrap: normal; white-space: pre; }

img.offset { float: right; margin: 12px 0px 10px 15px; }

img.avatar { width: 20px; }

.post img { float: none; margin-left: auto; margin-right: auto; margin-top: 10px; margin-bottom: 10px; }

.post iframe { padding-top: 10px; padding-bottom: 20px; }

blockquote { color: var(--bs-secondary-color); border-left: 5px solid var(--blockquote-border); }

blockquote p { font-size: 1rem; padding-top: 10px; padding-bottom: 10px; padding-left: 15px; }

.image-with-shadow { box-shadow: 0 4px 8px var(--image-shadow); margin: 1.5em 0; text-align: center; }

.image-with-shadow img { display: block; margin: 0 auto; }

.image-with-shadow figcaption { margin-top: 0.5em; font-size: 0.9em; color: var(--bs-secondary-color); }

.feedbox { height: 320px; overflow: hidden; -webkit-mask-image: -webkit-gradient(linear, left 85%, left bottom, from(black), to(rgba(0, 0, 0, 0))); }

.postbox { min-height: 80px; }

.paperbox { min-height: 140px; }

.projectbox { min-height: 120px; }

.talkbox { min-height: 100px; }

.titlebox { min-width: 300px; }

.handlebox { height: 20px; display: table-cell; vertical-align: middle; }

.pad-right { padding-right: 10px; }

.pad-left { padding-left: 10px; }

.centered-pills { text-align: center; }

.centered-pills ul.nav-pills { display: inline-block; }

.centered-pills li { display: inline; }

.centered-pills a { float: left; }

* html .centered-pills ul.nav-pills, * + html .centered-pills ul.nav-pills { display: inline; }

.card { background-color: var(--bs-card-bg); }

.post-content a, .card-body a { color: var(--bs-primary); text-decoration: none; }

.post-content a:hover, .card-body a:hover { color: var(--bs-link-hover-color); text-decoration: none; }

/* ================================================================= 6. REFACTORED NAVIGATION & BUTTONS (SIZE AND COLOR FIXES) ================================================================= */
body .nav-pills .nav-link.active, body .nav-pills .show > .nav-link { background-color: var(--bs-primary) !important; color: var(--bs-dark) !important; }

.navbar-nav .nav-link { font-size: 24px !important; /* FIXED: Increased size to restore prominent look */ padding: 0.5rem 1.25rem !important; /* FIXED: Increased horizontal padding */ font-weight: 500 !important; /* Ensure bold text */ }

.navbar-nav .nav-link.active, .navbar-nav .nav-link.active:focus, .navbar-nav .nav-link.active:hover { color: var(--bs-dark) !important; background-color: var(--bs-primary) !important; }

.nav-link { color: var(--bs-body-color) !important; }

/* Links will now get their color from --bs-link-color */
a:hover, i:hover, .nav-link a:hover { color: var(--bs-link-hover-color) !important; /* This is your new hover color */ text-decoration: none !important; }

.btn-primary { font-weight: 700 !important; box-shadow: none !important; background-color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; color: var(--bs-dark, #333) !important; }

.btn-primary .fas, .btn-primary .fab { color: var(--bs-dark, #333) !important; }

.btn-primary:hover, .btn-primary:focus { box-shadow: none !important; background-color: var(--bs-link-hover-color) !important; border-color: var(--bs-link-hover-color) !important; color: var(--bs-dark, #333) !important; }

.btn-outline-primary, .btn-outline-secondary, .btn-secondary { font-weight: 700 !important; box-shadow: none !important; background-color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; color: var(--bs-dark, #333) !important; }

.btn-outline-primary:hover, .btn-outline-secondary:hover, .btn-secondary:hover { background-color: var(--bs-link-hover-color) !important; border-color: var(--bs-link-hover-color) !important; color: var(--bs-dark, #333) !important; }

.btn-outline-primary .fas, .btn-outline-secondary .fas, .btn-secondary .fas { color: var(--bs-dark, #333) !important; }

/* ================================================================= 7. REFACTORED FOOTER ================================================================= */
footer { background-color: transparent; color: var(--footer-text); padding: 20px 0; font-size: 18px; }

footer a { color: var(--bs-secondary-color); text-decoration: none; }

footer a:hover { color: var(--bs-primary); text-decoration: none; }

footer ul { display: flex; justify-content: center; list-style: none; padding: 0; }

footer ul:first-of-type { gap: 25px; margin: 0; }

footer ul:nth-of-type(2) { gap: 20px; margin: 15px 0 0; }

footer ul:nth-of-type(2) a { color: var(--footer-link-secondary); font-size: 12px; }

footer .container div { text-align: center; font-size: 12px; color: var(--footer-link-secondary); margin-top: 10px; }

footer ul:nth-of-type(2) a { color: var(--bs-secondary-color); text-decoration: none; font-size: 14px; }

footer ul:nth-of-type(2) a:hover { color: var(--bs-primary); text-decoration: none; }

#footer { height: 80px; }

.footernav { color: var(--bs-secondary-color); text-align: center; margin-right: 2px; }

/* ================================================================= 8. REFACTORED CODE & WIDGETS ================================================================= */
.code-snippet { position: relative; border: 1px solid var(--code-snippet-border); border-radius: 5px; padding: 10px; margin-bottom: 20px; background-color: var(--bs-tertiary-bg); }

.code-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }

.code-type { font-size: 0.9em; font-weight: bold; color: var(--bs-body-color); padding: 2px 8px; background-color: var(--code-type-bg); border-radius: 3px; }

button.copy-button { position: relative; background-color: var(--bs-secondary); color: var(--bs-light); border: none; border-radius: 5px; padding: 5px 10px; cursor: pointer; font-size: 0.9em; display: flex; align-items: center; gap: 5px; }

button.copy-button:hover { background-color: var(--bs-primary); }

button.copy-button::before { content: "■"; color: var(--bs-light); }

.responsive-iframe-container { position: relative; width: 100%; padding-top: 56.25%; overflow: hidden; max-width: 100%; margin: 0 auto; }

.responsive-iframe-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }

#scroll-to-top { display: none; position: fixed; bottom: 20px; right: 20px; z-index: 99; background-color: var(--scroll-top-bg); color: var(--scroll-top-color); border: none; border-radius: 5px; padding: 10px 15px; cursor: pointer; opacity: 0.8; }

#scroll-to-top:hover { opacity: 1; }

#scrollToTopBtn { position: fixed; bottom: 20px; right: 20px; z-index: 1050; opacity: 0; visibility: hidden; width: 50px; height: 50px; font-size: 1.2rem; transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out; }

#scrollToTopBtn.show { opacity: 1; visibility: visible; }

.filter-tag { padding: 0.35rem 0.8rem !important; border-radius: 50rem !important; border: 1px solid var(--bs-border-color) !important; color: var(--bs-body-color) !important; transition: all 0.2s ease-in-out; cursor: pointer; user-select: none; }

.filter-tag:hover:not(.active) { background-color: var(--bs-tertiary-bg) !important; border-color: var(--bs-secondary-color) !important; }

.filter-tag.active { font-weight: 600; }

.filter-tag span.count { margin-left: 0.3rem; opacity: 0.8; }

.toc-content ul.toc { padding-left: 0; list-style: none; }

.toc-content ul.toc li { margin-bottom: 0.5rem; font-weight: 500; }

.toc-content ul.toc li a { text-decoration: none; color: var(--bs-body-color); }

.toc-content ul.toc li a:hover { text-decoration: underline; color: var(--bs-primary); }

.toc-content ul.toc li ul { padding-left: 1.5rem; margin-top: 0.5rem; list-style: none; }

.toc-content ul.toc li ul li { font-weight: 400; font-size: 0.9em; margin-bottom: 0.25rem; }

.sticky-sidebar { max-height: calc(100vh - 4rem); overflow-y: auto; }

.infinite-spinner { display: block; width: 40px; height: 40px; border-radius: 40px; background-color: var(--bs-secondary-color); margin: 60px auto; -webkit-animation: scaleout 1.0s infinite ease-in-out; animation: scaleout 1.0s infinite ease-in-out; }

@-webkit-keyframes scaleout { 0% { -webkit-transform: scale(0); }
  100% { -webkit-transform: scale(1);
    opacity: 0; } }

@keyframes scaleout { 0% { transform: scale(0);
    -webkit-transform: scale(0); }
  100% { transform: scale(1);
    -webkit-transform: scale(1);
    opacity: 0; } }

#container { width: 100%; }

#left { float: left; width: 0px; }

#right { float: right; width: 20px; }

#center { margin: 0 auto; width: 0px; }

/* ================================================================= 9. TECHNICAL ELEMENTS (TABLES) ================================================================= */
table { width: 100%; margin: 1.5rem 0; border-radius: 5px; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1); /* Use a lighter shadow for light mode visibility */ background-color: var(--bs-card-bg); color: var(--bs-body-color); }

thead { background-color: var(--bs-dark); color: var(--bs-light); }

th { text-transform: uppercase; font-size: 0.8em; font-weight: 700; padding: 0.75em; text-shadow: none; border-bottom: 1px solid var(--bs-border-color); }

td { padding: 0.75em; color: var(--bs-body-color); border-top: 1px solid var(--bs-border-color); font-size: 0.9em; }

/* Ensure links inside table cells follow the primary link style */
table a { color: var(--bs-primary); text-decoration: none; }

table a:hover { color: var(--bs-link-hover-color); }

:root table { background-color: #f7f7f7; /* Very light background for contrast */ }

[data-bs-theme="dark"] table { background-color: var(--bs-card-bg); }

.mermaid { display: block; margin: 0 auto; max-width: 100%; overflow-x: auto; /* enables horizontal scroll if needed */ text-align: center; }

.mermaid svg { max-width: 100% !important; /* scale down instead of overflow */ height: auto !important; }

/* ================================================================= 1. THEME ENGINE: Callout Component Variables ================================================================= */
:root { /* Light Mode Callouts */ --callout-note-bg:     white; --callout-note-border: #82a0af; --callout-note-text:   #597b8b; --callout-note-link:   #45606c; --callout-tip-bg:     white; --callout-tip-border: #82b276; --callout-tip-text:   #5c8c4f; --callout-tip-link:   #466c3d; --callout-warning-bg:     white; --callout-warning-border: #d69e5d; --callout-warning-text:   #b7782f; --callout-warning-link:   #8f5d25; --callout-info-bg:     white; --callout-info-border: #76a7ed; --callout-info-text:   #327ce4; --callout-info-link:   #1a62c9; --callout-alert-bg:     white; --callout-alert-border: #d47878; --callout-alert-text:   #c13f3f; --callout-alert-link:   #9b3232; }

[data-bs-theme="dark"] { /* Dark Mode Callouts - Inverted Logic */ --callout-note-bg:     #45606c; --callout-note-border: #c0d0d7; --callout-note-text:   white; --callout-note-link:   white; --callout-tip-bg:     #466c3d; --callout-tip-border: #bed6b8; --callout-tip-text:   white; --callout-tip-link:   white; --callout-warning-bg:     #8f5d25; --callout-warning-border: #eaceaf; --callout-warning-text:   white; --callout-warning-link:   white; --callout-info-bg:     #1a62c9; --callout-info-border: #d0e1f9; --callout-info-text:   white; --callout-info-link:   white; --callout-alert-bg:     #9b3232; --callout-alert-border: #ecc6c6; --callout-alert-text:   white; --callout-alert-link:   white; }

/* ================================================================= 2. REFACTORED CALLOUT MIXIN & CLASSES ================================================================= */
.callout-mk-note { position: relative; display: flex; flex-direction: column; border-radius: var(--bs-card-border-radius); box-shadow: var(--bs-box-shadow-sm) !important; border: 0 !important; background-color: var(--callout-note-bg); border-left: 0.25rem solid var(--callout-note-border); color: var(--callout-note-text); padding: 1rem 1.5rem; margin-bottom: 1.5rem; }

.callout-mk-note h5, .callout-mk-note h6, .callout-mk-note p, .callout-mk-note small { color: inherit; }

.callout-mk-note a { color: var(--callout-note-link); font-weight: 600; }

.callout-mk-note a:hover, .callout-mk-note a:focus { filter: brightness(85%); }

.callout-mk-tip { position: relative; display: flex; flex-direction: column; border-radius: var(--bs-card-border-radius); box-shadow: var(--bs-box-shadow-sm) !important; border: 0 !important; background-color: var(--callout-tip-bg); border-left: 0.25rem solid var(--callout-tip-border); color: var(--callout-tip-text); padding: 1rem 1.5rem; margin-bottom: 1.5rem; }

.callout-mk-tip h5, .callout-mk-tip h6, .callout-mk-tip p, .callout-mk-tip small { color: inherit; }

.callout-mk-tip a { color: var(--callout-tip-link); font-weight: 600; }

.callout-mk-tip a:hover, .callout-mk-tip a:focus { filter: brightness(85%); }

.callout-mk-warning { position: relative; display: flex; flex-direction: column; border-radius: var(--bs-card-border-radius); box-shadow: var(--bs-box-shadow-sm) !important; border: 0 !important; background-color: var(--callout-warning-bg); border-left: 0.25rem solid var(--callout-warning-border); color: var(--callout-warning-text); padding: 1rem 1.5rem; margin-bottom: 1.5rem; }

.callout-mk-warning h5, .callout-mk-warning h6, .callout-mk-warning p, .callout-mk-warning small { color: inherit; }

.callout-mk-warning a { color: var(--callout-warning-link); font-weight: 600; }

.callout-mk-warning a:hover, .callout-mk-warning a:focus { filter: brightness(85%); }

.callout-mk-info { position: relative; display: flex; flex-direction: column; border-radius: var(--bs-card-border-radius); box-shadow: var(--bs-box-shadow-sm) !important; border: 0 !important; background-color: var(--callout-info-bg); border-left: 0.25rem solid var(--callout-info-border); color: var(--callout-info-text); padding: 1rem 1.5rem; margin-bottom: 1.5rem; }

.callout-mk-info h5, .callout-mk-info h6, .callout-mk-info p, .callout-mk-info small { color: inherit; }

.callout-mk-info a { color: var(--callout-info-link); font-weight: 600; }

.callout-mk-info a:hover, .callout-mk-info a:focus { filter: brightness(85%); }

.callout-mk-alert { position: relative; display: flex; flex-direction: column; border-radius: var(--bs-card-border-radius); box-shadow: var(--bs-box-shadow-sm) !important; border: 0 !important; background-color: var(--callout-alert-bg); border-left: 0.25rem solid var(--callout-alert-border); color: var(--callout-alert-text); padding: 1rem 1.5rem; margin-bottom: 1.5rem; }

.callout-mk-alert h5, .callout-mk-alert h6, .callout-mk-alert p, .callout-mk-alert small { color: inherit; }

.callout-mk-alert a { color: var(--callout-alert-link); font-weight: 600; }

.callout-mk-alert a:hover, .callout-mk-alert a:focus { filter: brightness(85%); }

/* ================================================================= 3. REFACTORED PROGRESSION & TRADE COMPONENTS ================================================================= */
/* --- Base Progression Styles (Theme-Aware) --- */
.trade-progression-container { margin-top: 1.5rem; }

.progression-timeline { position: relative; padding-left: 30px; list-style: none; margin-top: 1rem; }

.progression-timeline::before { content: ''; position: absolute; top: 5px; bottom: 5px; left: 10px; width: 2px; background-color: var(--bs-border-color-translucent); z-index: 0; }

.progression-step { position: relative; margin-bottom: 1.25rem; padding: 0.75rem 1rem; background-color: var(--bs-card-bg); border: 1px solid var(--bs-border-color); border-radius: 0.375rem; }

/* The dot on the timeline */
.progression-step::before { content: ''; position: absolute; left: -24px; top: 12px; width: 16px; height: 16px; border-radius: 50%; background-color: var(--bs-body-bg); border: 3px solid var(--bs-primary); z-index: 1; }

/* Timeline dot colors */
.step-open::before { border-color: var(--bs-primary); }

.step-adjustment::before { border-color: var(--bs-warning); }

.step-close::before { border-color: var(--bs-success); }

.progression-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.5rem; }

.progression-date { font-size: 0.8rem; color: var(--bs-secondary-color); font-weight: 500; }

.progression-details p { margin-bottom: 0.25rem; font-size: 0.9rem; color: var(--bs-body-color); }

.progression-details .profit-loss { font-weight: bold; font-family: 'SFMono-Regular', Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; }

.leg-details { margin-top: 0.5rem; padding-left: 0.5rem; border-left: 2px solid var(--bs-primary); }

/* --- Base Tag/Pill Styling --- */
.progression-tag, .status-pill { display: inline-block; padding: 0.25em 0.6em; font-size: 0.75rem; font-weight: 700; line-height: 1; text-align: center; white-space: nowrap; vertical-align: baseline; border-radius: 0.375rem; }

.status-pill { border-radius: 50rem; /* pill shape */ text-transform: uppercase; flex-shrink: 0; /* Don't let it wrap */ }

/* --- Theme-Aware Color Tags (Progression) --- */
.tag-open { color: var(--bs-primary-emphasis); background-color: var(--bs-primary-subtle); border: 1px solid var(--bs-primary-border-subtle); }

.tag-adjustment { color: var(--bs-warning-emphasis); background-color: var(--bs-warning-subtle); border: 1px solid var(--bs-warning-border-subtle); }

.tag-close { color: var(--bs-success-emphasis); background-color: var(--bs-success-subtle); border: 1px solid var(--bs-success-border-subtle); }

/* --- Theme-Aware Color Tags (Status) --- */
.status-open { color: var(--bs-success-emphasis); background-color: var(--bs-success-subtle); border: 1px solid var(--bs-success-border-subtle); }

.status-closed { color: var(--bs-secondary-emphasis); background-color: var(--bs-secondary-subtle); border: 1px solid var(--bs-secondary-border-subtle); }

/* --- Theme-Aware Color Tags (Execution Steps) --- */
.tag-assignment { color: var(--bs-warning-emphasis); background-color: var(--bs-warning-subtle); border: 1px solid var(--bs-warning-border-subtle); }

.tag-wheel_step-sell_covered_call { color: var(--bs-success-emphasis); background-color: var(--bs-success-subtle); border: 1px solid var(--bs-success-border-subtle); }

.tag-called_away { color: var(--bs-danger-emphasis); background-color: var(--bs-danger-subtle); border: 1px solid var(--bs-danger-border-subtle); }

.tag-open_short_put, .tag-closed_independent_put { color: var(--bs-primary-emphasis); background-color: var(--bs-primary-subtle); border: 1px solid var(--bs-primary-border-subtle); }

/* --- Theme-Aware Account Pills --- */
.status-pill.account-margin { color: var(--bs-primary-emphasis); background-color: var(--bs-primary-subtle); border: 1px solid var(--bs-primary-border-subtle); }

.status-pill.account-ira { color: var(--bs-success-emphasis); background-color: var(--bs-success-subtle); border: 1px solid var(--bs-success-border-subtle); }

.status-pill.account-paper { color: var(--bs-warning-emphasis); background-color: var(--bs-warning-subtle); border: 1px solid var(--bs-warning-border-subtle); }

/* --- Theme-Aware Estimated Scenario --- */
.progression-step.estimated-scenario { background-color: var(--bs-info-subtle); border: 1px dashed var(--bs-info-border-subtle); border-radius: 0.5rem; padding: 0.75rem; margin-bottom: 0.5rem; list-style: none; }

.estimated-scenario .progression-tag { color: var(--bs-light); background-color: var(--bs-info-emphasis); border: none; }

/* --- Theme-Aware Grids (Legs & Metrics) --- */
.trade-card-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 0.5rem; }

.leg-grid, .metrics-grid { display: grid; gap: 0.5rem; margin-top: 0.75rem; }

.leg-grid { grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); }

.metrics-grid { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); font-size: 0.8rem; }

.leg-item, .metric-item { padding: 0.25rem 0.5rem; background-color: var(--bs-tertiary-bg); border-radius: 0.25rem; border: 1px solid var(--bs-border-color-translucent); }

.leg-item { text-align: center; font-size: 0.8rem; }

.metric-item { font-size: 0.8rem; }

.leg-item strong, .metric-item strong { display: block; color: var(--bs-secondary-color); font-size: 0.75rem; text-transform: uppercase; }

.leg-item span { font-size: 0.9rem; font-weight: bold; font-family: 'SFMono-Regular', Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; color: var(--bs-body-color); }

/* --- Legacy Timeline (Cleaned & Themed) --- */
.progression-timeline-legacy { border-left: 2px solid var(--bs-border-color); padding-left: 1rem; position: relative; margin-top: 1rem; }

.progression-step-legacy { margin-bottom: 1.5rem; position: relative; }

.progression-step-legacy::before { content: ''; position: absolute; left: -1.05rem; top: 0.2rem; width: 15px; height: 15px; border-radius: 50%; background-color: var(--bs-primary); border: 3px solid var(--bs-body-bg); }

.step-open-legacy::before { background-color: var(--bs-primary); }

.step-adjustment-legacy::before { background-color: var(--bs-warning); }

.step-close-legacy::before { background-color: var(--bs-success); }

.progression-date-legacy { font-size: 0.75rem; color: var(--bs-secondary-color); display: block; margin-bottom: 0.25rem; }

/* ================================================================= 4. ICON-ONLY CIRCLE BUTTON (for Social Links) ================================================================= */
.btn-icon-circle { display: inline-flex; align-items: center; justify-content: center; width: 2.75rem; /* 44px */ height: 2.75rem; /* 44px */ border-radius: 50%; background-color: var(--bs-tertiary-bg); border: 1px solid var(--bs-border-color-translucent); color: var(--bs-secondary-color); /* Icon color */ text-decoration: none; transition: all 0.2s ease-in-out; /* Target both Font Awesome and SVGs */ }

.btn-icon-circle i, .btn-icon-circle .icon, .btn-icon-circle svg { font-size: 1.2rem; color: inherit; /* Inherit the text-secondary color */ }

.btn-icon-circle:hover { color: var(--bs-body-color); /* Icon brightens on hover */ border-color: var(--bs-border-color); box-shadow: var(--bs-box-shadow-sm); }

.highlight { background-color: #f8f8f8; }

.highlight .c { color: #586E75; }

/* Comment */
.highlight .err { color: #93A1A1; }

/* Error */
.highlight .g { color: #93A1A1; }

/* Generic */
.highlight .k { color: #859900; }

/* Keyword */
.highlight .l { color: #93A1A1; }

/* Literal */
.highlight .n { color: #93A1A1; }

/* Name */
.highlight .o { color: #859900; }

/* Operator */
.highlight .x { color: #CB4B16; }

/* Other */
.highlight .p { color: #93A1A1; }

/* Punctuation */
.highlight .cm { color: #586E75; }

/* Comment.Multiline */
.highlight .cp { color: #859900; }

/* Comment.Preproc */
.highlight .c1 { color: #586E75; }

/* Comment.Single */
.highlight .cs { color: #859900; }

/* Comment.Special */
.highlight .gd { color: #2AA198; }

/* Generic.Deleted */
.highlight .ge { color: #93A1A1; font-style: italic; }

/* Generic.Emph */
.highlight .gr { color: #DC322F; }

/* Generic.Error */
.highlight .gh { color: #CB4B16; }

/* Generic.Heading */
.highlight .gi { color: #859900; }

/* Generic.Inserted */
.highlight .go { color: #93A1A1; }

/* Generic.Output */
.highlight .gp { color: #93A1A1; }

/* Generic.Prompt */
.highlight .gs { color: #93A1A1; font-weight: bold; }

/* Generic.Strong */
.highlight .gu { color: #CB4B16; }

/* Generic.Subheading */
.highlight .gt { color: #93A1A1; }

/* Generic.Traceback */
.highlight .kc { color: #CB4B16; }

/* Keyword.Constant */
.highlight .kd { color: #268BD2; }

/* Keyword.Declaration */
.highlight .kn { color: #859900; }

/* Keyword.Namespace */
.highlight .kp { color: #859900; }

/* Keyword.Pseudo */
.highlight .kr { color: #268BD2; }

/* Keyword.Reserved */
.highlight .kt { color: #DC322F; }

/* Keyword.Type */
.highlight .ld { color: #93A1A1; }

/* Literal.Date */
.highlight .m { color: #2AA198; }

/* Literal.Number */
.highlight .s { color: #2AA198; }

/* Literal.String */
.highlight .na { color: #93A1A1; }

/* Name.Attribute */
.highlight .nb { color: #B58900; }

/* Name.Builtin */
.highlight .nc { color: #268BD2; }

/* Name.Class */
.highlight .no { color: #CB4B16; }

/* Name.Constant */
.highlight .nd { color: #268BD2; }

/* Name.Decorator */
.highlight .ni { color: #CB4B16; }

/* Name.Entity */
.highlight .ne { color: #CB4B16; }

/* Name.Exception */
.highlight .nf { color: #268BD2; }

/* Name.Function */
.highlight .nl { color: #93A1A1; }

/* Name.Label */
.highlight .nn { color: #93A1A1; }

/* Name.Namespace */
.highlight .nx { color: #93A1A1; }

/* Name.Other */
.highlight .py { color: #93A1A1; }

/* Name.Property */
.highlight .nt { color: #268BD2; }

/* Name.Tag */
.highlight .nv { color: #268BD2; }

/* Name.Variable */
.highlight .ow { color: #859900; }

/* Operator.Word */
.highlight .w { color: #93A1A1; }

/* Text.Whitespace */
.highlight .mf { color: #2AA198; }

/* Literal.Number.Float */
.highlight .mh { color: #2AA198; }

/* Literal.Number.Hex */
.highlight .mi { color: #2AA198; }

/* Literal.Number.Integer */
.highlight .mo { color: #2AA198; }

/* Literal.Number.Oct */
.highlight .sb { color: #586E75; }

/* Literal.String.Backtick */
.highlight .sc { color: #2AA198; }

/* Literal.String.Char */
.highlight .sd { color: #93A1A1; }

/* Literal.String.Doc */
.highlight .s2 { color: #2AA198; }

/* Literal.String.Double */
.highlight .se { color: #CB4B16; }

/* Literal.String.Escape */
.highlight .sh { color: #93A1A1; }

/* Literal.String.Heredoc */
.highlight .si { color: #2AA198; }

/* Literal.String.Interpol */
.highlight .sx { color: #2AA198; }

/* Literal.String.Other */
.highlight .sr { color: #DC322F; }

/* Literal.String.Regex */
.highlight .s1 { color: #2AA198; }

/* Literal.String.Single */
.highlight .ss { color: #2AA198; }

/* Literal.String.Symbol */
.highlight .bp { color: #268BD2; }

/* Name.Builtin.Pseudo */
.highlight .vc { color: #268BD2; }

/* Name.Variable.Class */
.highlight .vg { color: #268BD2; }

/* Name.Variable.Global */
.highlight .vi { color: #268BD2; }

/* Name.Variable.Instance */
.highlight .il { color: #2AA198; }

/* Literal.Number.Integer.Long */
[data-bs-theme="dark"] { /* Comment */ /* Error */ /* Generic */ /* Keyword */ /* Literal */ /* Name */ /* Operator */ /* Other */ /* Punctuation */ /* Comment.Multiline */ /* Comment.Preproc */ /* Comment.Single */ /* Comment.Special */ /* Generic.Deleted */ /* Generic.Emph */ /* Generic.Error */ /* Generic.Heading */ /* Generic.Inserted */ /* Generic.Output */ /* Generic.Prompt */ /* Generic.Strong */ /* Generic.Subheading */ /* Generic.Traceback */ /* Keyword.Constant */ /* Keyword.Declaration */ /* Keyword.Namespace */ /* Keyword.Pseudo */ /* Keyword.Reserved */ /* Keyword.Type */ /* Literal.Date */ /* Literal.Number */ /* Literal.String */ /* Name.Attribute */ /* Name.Builtin */ /* Name.Class */ /* Name.Constant */ /* Name.Decorator */ /* Name.Entity */ /* Name.Exception */ /* Name.Function */ /* Name.Label */ /* Name.Namespace */ /* Name.Other */ /* Name.Property */ /* Name.Tag */ /* Name.Variable */ /* Operator.Word */ /* Text.Whitespace */ /* Literal.Number.Float */ /* Literal.Number.Hex */ /* Literal.Number.Integer */ /* Literal.Number.Oct */ /* Literal.String.Backtick */ /* Literal.String.Char */ /* Literal.String.Doc */ /* Literal.String.Double */ /* Literal.String.Escape */ /* Literal.String.Heredoc */ /* Literal.String.Interpol */ /* Literal.String.Other */ /* Literal.String.Regex */ /* Literal.String.Single */ /* Literal.String.Symbol */ /* Name.Builtin.Pseudo */ /* Name.Variable.Class */ /* Name.Variable.Global */ /* Name.Variable.Instance */ /* Literal.Number.Integer.Long */ }

[data-bs-theme="dark"] .highlight { background-color: #002b36; color: #839496; }

[data-bs-theme="dark"] .highlight .c { color: #586e75; }

[data-bs-theme="dark"] .highlight .err { color: #93a1a1; }

[data-bs-theme="dark"] .highlight .g { color: #839496; }

[data-bs-theme="dark"] .highlight .k { color: #859900; }

[data-bs-theme="dark"] .highlight .l { color: #839496; }

[data-bs-theme="dark"] .highlight .n { color: #839496; }

[data-bs-theme="dark"] .highlight .o { color: #859900; }

[data-bs-theme="dark"] .highlight .x { color: #cb4b16; }

[data-bs-theme="dark"] .highlight .p { color: #839496; }

[data-bs-theme="dark"] .highlight .cm { color: #586e75; }

[data-bs-theme="dark"] .highlight .cp { color: #859900; }

[data-bs-theme="dark"] .highlight .c1 { color: #586e75; }

[data-bs-theme="dark"] .highlight .cs { color: #859900; }

[data-bs-theme="dark"] .highlight .gd { color: #2aa198; }

[data-bs-theme="dark"] .highlight .ge { color: #839496; font-style: italic; }

[data-bs-theme="dark"] .highlight .gr { color: #dc322f; }

[data-bs-theme="dark"] .highlight .gh { color: #cb4b16; }

[data-bs-theme="dark"] .highlight .gi { color: #859900; }

[data-bs-theme="dark"] .highlight .go { color: #839496; }

[data-bs-theme="dark"] .highlight .gp { color: #839496; }

[data-bs-theme="dark"] .highlight .gs { color: #839496; font-weight: bold; }

[data-bs-theme="dark"] .highlight .gu { color: #cb4b16; }

[data-bs-theme="dark"] .highlight .gt { color: #839496; }

[data-bs-theme="dark"] .highlight .kc { color: #cb4b16; }

[data-bs-theme="dark"] .highlight .kd { color: #268bd2; }

[data-bs-theme="dark"] .highlight .kn { color: #859900; }

[data-bs-theme="dark"] .highlight .kp { color: #859900; }

[data-bs-theme="dark"] .highlight .kr { color: #268bd2; }

[data-bs-theme="dark"] .highlight .kt { color: #dc322f; }

[data-bs-theme="dark"] .highlight .ld { color: #839496; }

[data-bs-theme="dark"] .highlight .m { color: #2aa198; }

[data-bs-theme="dark"] .highlight .s { color: #2aa198; }

[data-bs-theme="dark"] .highlight .na { color: #839496; }

[data-bs-theme="dark"] .highlight .nb { color: #b58900; }

[data-bs-theme="dark"] .highlight .nc { color: #268bd2; }

[data-bs-theme="dark"] .highlight .no { color: #cb4b16; }

[data-bs-theme="dark"] .highlight .nd { color: #268bd2; }

[data-bs-theme="dark"] .highlight .ni { color: #cb4b16; }

[data-bs-theme="dark"] .highlight .ne { color: #cb4b16; }

[data-bs-theme="dark"] .highlight .nf { color: #268bd2; }

[data-bs-theme="dark"] .highlight .nl { color: #839496; }

[data-bs-theme="dark"] .highlight .nn { color: #839496; }

[data-bs-theme="dark"] .highlight .nx { color: #839496; }

[data-bs-theme="dark"] .highlight .py { color: #839496; }

[data-bs-theme="dark"] .highlight .nt { color: #268bd2; }

[data-bs-theme="dark"] .highlight .nv { color: #268bd2; }

[data-bs-theme="dark"] .highlight .ow { color: #859900; }

[data-bs-theme="dark"] .highlight .w { color: #839496; }

[data-bs-theme="dark"] .highlight .mf { color: #2aa1img8; }

[data-bs-theme="dark"] .highlight .mh { color: #2aa198; }

[data-bs-theme="dark"] .highlight .mi { color: #2aa198; }

[data-bs-theme="dark"] .highlight .mo { color: #2aa198; }

[data-bs-theme="dark"] .highlight .sb { color: #586e75; }

[data-bs-theme="dark"] .highlight .sc { color: #2aa198; }

[data-bs-theme="dark"] .highlight .sd { color: #839496; }

[data-bs-theme="dark"] .highlight .s2 { color: #2aa1a1; }

[data-bs-theme="dark"] .highlight .se { color: #cb4b16; }

[data-bs-theme="dark"] .highlight .sh { color: #839496; }

[data-bs-theme="dark"] .highlight .si { color: #2aa198; }

[data-bs-theme="dark"] .highlight .sx { color: #2aa198; }

[data-bs-theme="dark"] .highlight .sr { color: #dc322f; }

[data-bs-theme="dark"] .highlight .s1 { color: #2aa198; }

[data-bs-theme="dark"] .highlight .ss { color: #2aa198; }

[data-bs-theme="dark"] .highlight .bp { color: #268bd2; }

[data-bs-theme="dark"] .highlight .vc { color: #268bd2; }

[data-bs-theme="dark"] .highlight .vg { color: #268bd2; }

[data-bs-theme="dark"] .highlight .vi { color: #268bd2; }

[data-bs-theme="dark"] .highlight .il { color: #2aa198; }

/*# sourceMappingURL=style.css.map */