Jake Vanderwerf
2026-01-01 07282da9671de8fb2601e9e641decb2655439ad8
src/feed/style.scss
@@ -35,7 +35,7 @@
// position: sticky;
// top: 3rem;
// z-index: 15;
// background: var(--overlay-heavy);
// background: rgba(var(--base-rgb),var(--op-6));
// padding: .25rem 3rem;
// details[open] summary {
//    background-color: var(--overlay);
@@ -72,7 +72,7 @@
//
// details[open],
// summary:hover {
//    background-color: var(--overlay-heavy);
//    background-color: rgba(var(--base-rgb),var(--op-6));
// }
//
// &:has(#favourites) {
@@ -156,7 +156,7 @@
// text-align: center;
// padding: 2rem;
// background: var(--base-100);
// border-radius: var(--innerRadius);
// border-radius: var(--radius);
// margin: 0 auto;
// max-width: 600px;
//}
@@ -190,7 +190,7 @@
// background: var(--base-50);
// box-shadow: 0 2px 4px rgba(0,0,0,0.1);
// opacity: 0;
// transition: opacity var(--transition-base) var(--delay);
// transition: opacity var(--trans-base) var(--delay);
// height: fit-content;
// padding: 0;
//
@@ -242,9 +242,9 @@
//       bottom: 0;
//       left: 0;
//       right: 0;
//       background-color: var(--overlay-light);
//       background-color: rgba(var(--base-rgb),var(--op-3));
//       backdrop-filter: blur(5px);
//       border-radius: var(--innerRadius);
//       border-radius: var(--radius);
//       z-index: 1;
//       padding: .25rem .25rem .25rem 1.1rem;
//    }
@@ -281,12 +281,12 @@
// background: var(--base);
// color: var(--contrast);
// border-radius: 4px;
// font-size: var(--medium);
// transition: all var(--transition-base);
// font-size: var(--txt-medium);
// transition: all var(--trans-base);
// border: 2px solid transparent;
// &[hidden] {
//    opacity: 0;
//    transition: all var(--transition-base);
//    transition: all var(--trans-base);
// }
// &:hover {
//    background: var(--pink-50);
@@ -302,9 +302,9 @@
// top: .5rem;
// right: .5rem;
// z-index: 10;
// background: var(--overlay-medium);
// background: rgba(var(--base-rgb),var(--op-4));
// border-radius: 50%;
// box-shadow: var(--subtle);
// box-shadow: rgba(var(--base-rgb),var(--op-45)) var(--shdw-subtle);
// border: none;
// width: 2rem;
// height: 2rem;
@@ -312,7 +312,7 @@
// justify-content: center;
// align-items: center;
// backdrop-filter: blur(5px);
// transition: all var(--transition-base);
// transition: all var(--trans-base);
//
// &:hover {
//    transform: scale(1.1);
@@ -358,7 +358,7 @@
//    width: 100%;
//    height: 100%;
//    object-fit: cover;
//    transition: transform var(--timing) var(--function);
//    transition: transform var(--trans-t) var(--trans-fn);
// }
// a:hover img {
//    transform: scale(1.05);
@@ -402,7 +402,7 @@
//    margin: 0 0 .5em 0!important;
//    font-size: 1.1rem;
//    font-family: var(--body);
//    font-weight: var(--bWeight);
//    font-weight: var(--fw-b);
// }
// span {
//    text-transform: uppercase;
@@ -461,7 +461,7 @@
// left: 0;
// right: 0;
// bottom: 0;
// background-color: var(--overlay-medium);
// background-color: rgba(var(--base-rgb),var(--op-4));
// display: flex;
// align-items: center;
// justify-content: center;
@@ -487,9 +487,9 @@
// }
//
// .wrapper {
//    background-color: var(--overlay-heavy);
//    background-color: rgba(var(--base-rgb),var(--op-6));
//    padding: 2rem;
//    border-radius: var(--innerRadius);
//    border-radius: var(--radius);
//    text-align: center;
//    max-width: 90%;
//    width: 400px;
@@ -512,7 +512,7 @@
//       left: calc(50% - var(--h));
//       opacity: .5;
//       z-index: 0;
//       animation: spin 1s var(--timing) infinite;
//       animation: spin 1s var(--trans-t) infinite;
//    }
//    div.icon {
//       height: 50px;
@@ -542,7 +542,7 @@
//          margin: 0;
//          max-width: 275px;
//          color: var(--contrast-100);
//          font-size: var(--small);
//          font-size: var(--txt-x-small);
//          animation: flicker 2s infinite;
//       }
//    }
@@ -642,8 +642,11 @@
.feed-block {
   .feed-filters {
   grid-column: full;
   .filters {
      padding: 1rem 0;
      max-width:var(--wide);
      margin: 0 auto;
   }
   .filter-group {
      position: relative;
@@ -655,6 +658,10 @@
      > .label {
         top: 0;
      }
      [type=radio] {
         position:absolute;
         left: var(--offScreen);
      }
      button, label {
         position: relative;
         padding: .5rem;
@@ -678,11 +685,15 @@
         bottom: -2rem;
         width: max-content;
         white-space: nowrap;
         font-weight: var(--bWeight);
         font-weight: var(--fw-b);
      }
   }
   h3 {
      margin: 0 0 .25rem;
      font-size: var(--medium);
   }
}
/** PLACEHOLDERS **/
.placeholder {
@@ -701,7 +712,10 @@
   }
}
.item-grid {
   padding: 0 var(--chip);
   max-width: none;
}
/** FEED ITEM **/
.feed.item {
   position: relative;
@@ -711,20 +725,42 @@
   box-shadow: 0 2px 4px rgba(0,0,0,0.1);
   height: fit-content;
   padding: 0;
   details {
      z-index: var(--z-2);
      width: 100%;
      position: relative;
      padding: 0;
      summary {
         position:absolute;
         top: -3rem;
         left:0;
         width: 100%;
         background-color: rgba(var(--base-rgb),var(--op-2));
         backdrop-filter: blur(5px);
         &:hover {
            background-color: rgba(var(--action-rgb),var(--op-45));
         }
      }
      &[open] {
         padding: .25rem .5rem;
         summary .icon {
            opacity: 0;
         }
      }
   }
   img {
      opacity: .7;
      filter: grayscale(.5) sepia(.3) blur(7px);
      transition: opacity var(--transition-base), filter var(--transition-base);
      &[data-loaded=true] {
         opacity: 1;
         filter: none;
      object-fit: cover;
      //opacity: .7;
      //filter: grayscale(.5) sepia(.3);
      &:hover {
         opacity: .8;
      }
   }
   &[data-timeline] {
      aspect-ratio: unset;
      summary {
      .images {
         aspect-ratio: 3/2;
         padding: 0 0 1rem;
         span {
@@ -768,46 +804,6 @@
         display: none;
      }
   }
   details a {
      font-size: clamp(1rem, 0.9306rem + 0.2222vw, 1.125rem);
   }
   &.highlighted {
      box-shadow: 0 0 0 4px #FF0080, 0 8px 16px rgba(0, 0, 0, 0.1);
      animation: highlight-puls 2s ease-in-out;
   }
   &[open],
   &:hover {
      .handle {
         background-color: var(--overlay-pink-medium);
         backdrop-filter: blur(5px);
      }
   }
   summary {
      width: calc(100% - 1rem);
      height: 100%;
      aspect-ratio: 1;
      .handle {
         position: absolute;
         bottom: 0;
         left: 0;
         right: 0;
         background-color: var(--overlay-light);
         backdrop-filter: blur(5px);
         border-radius: var(--innerRadius);
         z-index: 1;
         padding: .25rem .25rem .25rem 1.1rem;
      }
      &::after {
         z-index: 11;
         position: absolute;
         bottom: .35rem;
         right: .7rem;
         width: 1.5rem;
         height: 1.5rem;
         cursor: pointer;
      }
   }
   label {
      font-weight: normal;