thomwolf's picture
thomwolf HF staff
thom new mods (#67)
926e541 verified
/* style.css */
/* Define colors */
:root {
--distill-gray: rgb(107, 114, 128);
--distill-gray-light: rgb(185, 185, 185);
--distill-gray-lighter: rgb(228, 228, 228);
--distill-gray-lightest: rgb(245, 245, 245);
--distill-blue: #007BFF;
}
/* Container for the controls */
[id^="plot-"] {
display: flex;
flex-direction: column;
align-items: center;
gap: 15px; /* Adjust the gap between controls as needed */
}
[id^="plot-"] figure {
margin-bottom: 0px;
margin-top: 0px;
padding: 0px;
}
.plotly_caption {
font-style: italic;
margin-top: 10px;
}
.plotly_controls {
display: flex;
flex-wrap: wrap;
flex-direction: row;
justify-content: center;
align-items: flex-start;
gap: 30px;
}
.plotly_input_container {
display: flex;
align-items: center;
flex-direction: column;
gap: 10px;
}
/* Style for the select dropdown */
.plotly_input_container > select {
padding: 2px 4px;
/* border: 1px solid #ccc; */
line-height: 1.5em;
text-align: center;
border-radius: 4px;
font-size: 12px;
background-color: var(--distill-gray-lightest);
outline: none;
}
/* Style for the range input */
.plotly_slider {
display: flex;
align-items: center;
gap: 10px;
}
.plotly_slider > input[type="range"] {
-webkit-appearance: none;
height: 2px;
background: var(--distill-gray-light);
border-radius: 5px;
outline: none;
}
.plotly_slider > span {
font-size: 14px;
line-height: 1.6em;
min-width: 16px;
}
.plotly_slider > input[type="range"]::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 18px;
height: 18px;
border-radius: 50%;
background: var(--distill-blue);
cursor: pointer;
}
.plotly_slider > input[type="range"]::-moz-range-thumb {
width: 18px;
height: 18px;
border-radius: 50%;
background: var(--distill-blue);
cursor: pointer;
}
/* Style for the labels */
.plotly_input_container > label {
font-size: 14px;
font-weight: bold;
}
.main-plot-container {
margin-top: 21px;
margin-bottom: 35px;
}
.main-plot-container > figure {
display: block !important;
/* Let this be handled by graph-container */
margin-bottom: 0px;
margin-top: 0px;
}
.main-plot-container > div {
display: none !important;
}
@media (min-width: 768px) {
.main-plot-container > figure {
display: none !important;
}
.main-plot-container > div {
display: flex !important;
}
}
d-byline .byline {
grid-template-columns: 1fr;
grid-column: text;
font-size: 0.9rem;
line-height: 1.8em;
}
@media (min-width: 768px) {
d-byline .byline {
grid-template-columns: 5fr 1fr 1fr;
}
}
#title-plot {
margin-top: 0px;
margin-bottom: 0px;
}
d-contents > nav a.active {
text-decoration: underline;
}
@media (max-width: 1199px) {
d-contents {
display: none;
background: white;
justify-self: start;
align-self: start;
padding-bottom: 0.5em;
margin-bottom: 1em;
padding-left: 0.25em;
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: rgba(0, 0, 0, 0.1);
overflow-y: scroll;
height: calc(100vh - 40px);
scrollbar-width: none;
z-index: -100;
}
}
d-contents a:hover {
border-bottom: none;
}
toc-title {
font-weight: bold;
font-size: 1.2em;
color: #333;
}
toggle-icon {
transition: transform 0.3s;
}
toggle-icon.collapsed {
transform: rotate(90deg);
}
.toc-content {
margin-top: 15px;
overflow: hidden;
/* max-height: 1000px; */
transition: max-height 0.3s ease-out;
}
.toc-content.collapsed {
max-height: 0;
margin-top: 0;
}
@media (min-width: 1200px) {
d-article {
/* Ensure d-article does not prevent sticky positioning */
overflow: visible;
}
d-contents {
align-self: start;
background: white;
grid-column-start: 1 !important;
grid-column-end: 4 !important;
grid-row: auto / span 6;
justify-self: end;
margin-top: 0em;
padding-right: 3em;
padding-left: 2em;
/* border-right: 1px solid rgba(0, 0, 0, 0.1);
border-right-width: 1px;
border-right-style: solid;
border-right-color: rgba(0, 0, 0, 0.1); */
position: -webkit-sticky; /* For Safari */
position: sticky;
top: 10px; /* Adjust this value if needed */
overflow-y: auto;
height: calc(100vh - 40px);
scrollbar-width: none;
transition: max-height 0.3s ease-out;
z-index: -100;
}
}
d-contents nav h3 {
margin-top: 0;
margin-bottom: 1em;
}
d-contents nav div div {
color: rgba(0, 0, 0, 0.8);
font-weight: bold;
}
d-contents nav a {
color: rgba(0, 0, 0, 0.8);
border-bottom: none;
text-decoration: none;
}
d-contents li {
list-style-type: none;
}
d-contents ul, d-article d-contents ul {
padding-left: 1em;
}
d-contents nav ul li {
margin-bottom: .25em;
}
d-contents nav a:hover {
text-decoration: underline solid rgba(0, 0, 0, 0.6);
}
d-contents nav ul {
margin-top: 0;
margin-bottom: 6px;
}
d-contents nav > div {
display: block;
outline: none;
margin-bottom: 0.5em;
}
d-contents nav > div > a {
font-size: 13px;
font-weight: 600;
}
d-article aside {
margin-bottom: 1em;
}
d-article img {
max-width: 100%;
}
@media (min-width: 768px) {
d-article aside {
margin-bottom: 0;
}
}
d-contents nav > div > a:hover,
d-contents nav > ul > li > a:hover {
text-decoration: none;
}
.note-box {
background-color: #f6f8fa;
border-left: 4px solid #444444;
padding: 1rem;
margin: 1rem 0; /* Keep this modest margin */
border-radius: 6px;
/* Add this to ensure the box only takes up needed space */
display: inline-block;
width: 100%;
}
.note-box-title {
margin: 0;
color: #444444;
font-weight: 600;
font-size: 1em;
}
.note-box-content {
margin-top: 0.5rem;
margin-bottom: 0; /* Ensure no bottom margin */
color: #24292f;
font-size: 0.9em;
line-height: 1.5em;
}
/* For dark mode support */
@media (prefers-color-scheme: dark) {
.note-box {
background-color: #1c1c1c;
border-left-color: #888888;
}
.note-box-title {
color: #888888;
}
.note-box-content {
color: #d4d4d4;
}
}
d-article {
font-size: 1.0em;
}
.figure-legend {
font-size: 0.9em;
font-style: italic;
color: var(--distill-gray);
line-height: 1.5em;
}
d-code {
font-size: 12px;
}
.large-image-background {
width: 100vw;
padding-top: 10px;
padding-bottom: 10px;
margin-left: calc(-50vw + 50%);
margin-right: calc(-50vw + 50%);
background: white;
height: fit-content; /* This will make it match the image height */
display: flex;
justify-content: center; /* This will center your image */
}
.large-image-background-transparent {
/* width: 100vw; */
padding-top: 10px;
padding-bottom: 10px;
/* margin-left: calc(-50vw + 50%); */
margin-left:-100px;
margin-right: -100px;
/* margin-right: calc(-50vw + 50%); */
/* background: white; */
height: fit-content; /* This will make it match the image height */
display: flex;
justify-content: center; /* This will center your image */
}
.boxed-image {
padding: 0.5rem;
background: white;
border-radius: 12px;
border: 1px solid #e5e7eb;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
d-article li {
margin-bottom: 0.0em;
}
d-article ul ul {
margin-bottom: 0.0em;
}
d-article ol ol {
margin-bottom: 0.0em;
}
d-article hr {
grid-column: text;
}
/* Memory visualization */
#graph-all {
min-width: 500px;
margin-right: 10px;
margin-bottom: 2rem;
padding: 0.5rem;
background: #f9fafb;
border-radius: 12px;
border: 1px solid #e5e7eb;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Main container styles */
#controls {
max-width: 1200px;
/* margin: 2rem auto; */
margin-bottom: 2rem;
margin-left: 10px;
padding: 0.6rem;
background: #f9fafb;
border-radius: 12px;
border: 1px solid #e5e7eb;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Grid layout */
#controls {
display: grid;
grid-template-columns: 1fr 1fr;
/* gap: 2rem; */
}
/* Cell styles */
.cell {
margin-bottom: 0.2rem;
}
/* Label styles */
label {
display: block;
/* margin-bottom: 0.5rem; */
font-size: 0.8rem;
font-weight: 500;
color: #374151;
}
/* Input container for range + number combination */
.input-container {
display: flex;
gap: 1rem;
align-items: center;
}
/* Range input styling */
input[type="range"] {
flex: 1;
height: 6px;
background: #e5e7eb;
border-radius: 3px;
appearance: none;
outline: none;
}
input[type="range"]::-webkit-slider-thumb {
appearance: none;
width: 16px;
height: 16px;
background: #3b82f6;
border-radius: 50%;
cursor: pointer;
transition: background 0.15s ease;
}
input[type="range"]::-webkit-slider-thumb:hover {
background: #2563eb;
}
/* Number input styling */
input[type="number"] {
width: 80px;
padding: 0.5rem;
border: 1px solid #e5e7eb;
border-radius: 6px;
font-size: 0.9rem;
color: #374151;
}
/* Select styling */
select {
width: 100%;
padding: 0.5rem;
border: 1px solid #e5e7eb;
border-radius: 6px;
background: white;
font-size: 0.9rem;
color: #374151;
cursor: pointer;
}
/* Checkbox styling */
input[type="checkbox"] {
width: 1.2rem;
height: 1.2rem;
margin-right: 0.5rem;
border: 2px solid #e5e7eb;
border-radius: 4px;
cursor: pointer;
}
/* Column specific styles */
.column-1 {
padding-right: 0.5rem;
}
.column-2 {
padding-left: 0.5rem;
}
/* Checkbox container */
.checkbox-container {
display: flex;
align-items: center;
margin-bottom: 1rem;
}
/* Memory visualization styles */
.memory-block {
background: #fff;
border-radius: 8px;
padding: 1rem;
margin-bottom: 1rem;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.memory-title {
font-size: 1.1rem;
font-weight: 500;
color: #374151;
margin-bottom: 0.5rem;
}
.memory-value {
font-size: 1.5rem;
font-weight: 600;
color: #3b82f6;
}
/* Responsive adjustments */
@media (max-width: 768px) {
#controls {
grid-template-columns: 1fr;
padding: 1rem;
}
.column-1, .column-2 {
padding: 0;
}
}
/* Hover states and transitions */
input:hover, select:hover {
border-color: #3b82f6;
}
input:focus, select:focus {
border-color: #2563eb;
outline: none;
box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}
/* Add smooth transitions */
input, select, button {
transition: all 0.15s ease;
}
/* Preset dropdown special styling */
select[name="presets"] {
background-color: #f3f4f6;
font-weight: 500;
}
/* Memory graph enhancements */
.activation-memory {
background: #dbeafe;
padding: 1rem;
border-radius: 8px;
margin-bottom: 1rem;
}
.gradient-memory {
background: #ede9fe;
padding: 1rem;
border-radius: 8px;
}