Update Koneko integration

This commit is contained in:
2025-06-24 09:23:51 -06:00
parent 46cb20ff09
commit 46baa99c0c
3271 changed files with 193256 additions and 4017 deletions

View File

@ -0,0 +1,230 @@
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
ms-box-sizing: border-box;
box-sizing: border-box;
}
body {
font-family: 'Neuton', serif;
font-size: 24px;
margin: 0;
padding: 0;
background: url(../images/dust.png);
color: rgb(31,43,51);
}
h1, h2, h3, h4, h5, h6, .button {
font-family: 'Alfa Slab One', cursive;
font-weight: 400;
}
h1 {
font-size: 72px;
margin-bottom: 0;
}
h2 {
font-size: 48px;
margin: 72px 0 0;
}
a, a:visited, a:active {
text-decoration: none;
color: rgb(39, 148, 221);
}
a:hover {
color: rgb(123, 188, 253);
}
pre {
margin: 32px 3px;
padding: 32px 18px;
border: 1px solid rgb(135,140,134);
background: rgba(4, 18, 27, 0.88);
color: rgb(240,239,220);
box-shadow: 0 0px 8px rgb(88, 84, 57);
}
code {
font-family: 'Anonymous Pro', monospace;
}
header {
background: rgba(4, 18, 27, 0.88);
padding-bottom: 48px;
border-bottom: 1px solid rgb(219,216,199);
box-shadow: 0 2px 8px rgb(219,216,199);
}
footer {
margin-top: 72px;
font-size: 16px;
padding: 20px 0;
background: rgba(4, 18, 27, 0.88);
}
footer a, footer a:visited, footer a:active, .nav a, .nav a:visited, .nav a:active {
color: rgb(240,239,220);
}
footer a:hover, .nav a:hover {
color: rgb(247, 246, 237);
}
header .wrapper {
position: relative;
}
p.lead {
font-size: 32px;
margin-top: 18px;
}
.clearfix:before,
.clearfix:after {
content: " "; /* 1 */
display: table; /* 2 */
}
.clearfix:after {
clear: both;
}
.wrapper {
max-width: 940px;
margin: 0 auto;
}
.logo {
color: rgb(240,239,220);
}
.logo span {
color: rgb(222,69,91);
}
.logo img {
width: 113px;
display: inline-block;
vertical-align: bottom;
}
.pin {
position: absolute;
top: -49px;
right: -87px;
}
.note-container {
margin-top: 10px;
}
.note {
padding: 18px 20px;
background: #eee;
text-decoration:none;
background:#ffc;
display:block;
padding: 20px;
width: 230px;
box-shadow: 5px 5px 7px rgba(33,33,33,.7);
-webkit-transform: rotate(-6deg);
-moz-transform: rotate(-6deg);
-ms-transform: rotate(-6deg);
transform: rotate(-6deg);
font-size: 18px;
}
.note h3 {
font-size: 32px;
margin: 0;
}
.row {}
.left-col {
float: left;
width: 70%;
padding-right: 20px;
}
.right-col {
float: left;
width: 30%;
padding-left: 20px;
}
.left-col img { width: 100%; height: auto; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.handwritten { font-family: "Cabin Sketch"; font-size: 18px; font-weight: 400; opacity: 0.9; }
.gallery .container { margin: 72px 0; position: relative; background: rgba(0,0,0,0.1); border: 1px dashed rgba(0,0,0,0.2); }
.gallery .cat { text-align: center; margin: 20px; }
.gallery .cat .cat-indicator {
margin-top: 10px;
}
.gallery img { border-radius: 3px; drop-shadow: 0 0 7px rgba(0,0,0,0.5); }
.gallery .pinned-indicator {
position: relative;
top: 60px;
margin-top: -50px;
text-align: center;
}
.gallery .container-indicator {
position: absolute;
bottom: 50%;
right: -100px;
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
}
.panel {
background: var(--light-rgba-20);
padding: 20px;
margin-top: 20px;
margin-right: 20px;
}
.panel h4 {
margin-top: 0;
}
.left-nav .left-col { width: 20%; }
.left-nav .right-col { width: 80%; }
.left-nav .nav {
margin: 136px 0 0;
padding: 10px 20px;
list-style: none;
box-shadow: 5px 5px 7px rgba(33,33,33,.7);
background: rgba(4, 18, 27, 0.88);
border-radius: 3px;
}
.nav li { margin-bottom: 5px; }
.button, .button:visited {
position: relative;
background: rgb(240, 62, 62);
color: #fff;
padding: 5px 20px;
width: 230px;
display: block;
margin: 42px auto 0;
border-radius: 3px;
box-shadow: 2px 2px 0 rgb(104, 62, 62);
letter-spacing: 1px;
text-transform: uppercase;
}
.button:hover {
top: 1px;
left: 1px;
background: rgb(221, 53, 53);
box-shadow: 1px 1px 0 rgb(104, 62, 62);
}
.button:active {
top: 2px;
left: 2px;
background: rgb(204, 34, 34);
box-shadow: none;
}
.social { position: fixed; top: 265px; left: 10px; list-style: none; padding: 0; margin: 0; }
.social li { margin: 5px 0 5px; }
.social span { display: none; }
.relative { position: relative; }
small { font-size: 13px; }
@media all and (max-width: 1135px) {
.social { display: none; }
}
@media all and (max-width: 48em) {
.left-col, .right-col { float: none; width: auto; }
.left-nav .nav { display: none; }
header, .wrapper, footer {
padding-left: 20px;
padding-right: 20px;
}
.pin { display: none; }
.handwritten { display: none; }
}

View File

@ -0,0 +1,119 @@
/*
Plugin Name: jQuery.pin
https://github.com/webpop/jquery.pin
Licensed under the terms of the MIT license.
*/
(function ($) {
"use strict";
$.fn.pin = function (options) {
var scrollY = 0, elements = [], disabled = false, $window = $(window);
options = options || {};
var recalculateLimits = function () {
for (var i=0, len=elements.length; i<len; i++) {
var $this = elements[i];
if (options.minWidth && $window.outerWidth() <= options.minWidth) {
if ($this.parent().is(".pin-wrapper")) { $this.unwrap(); }
$this.css({width: "", left: "", top: "", position: ""});
if (options.activeClass) { $this.removeClass(options.activeClass); }
disabled = true;
continue;
} else {
disabled = false;
}
var $container = options.containerSelector ? $this.closest(options.containerSelector) : $(document.body);
var offset = $this.offset();
var containerOffset = $container.offset();
var parentOffset = $this.parent().offset();
if (!$this.parent().is(".pin-wrapper")) {
$this.wrap("<div class='pin-wrapper'>");
}
var pad = $.extend({
top: 0,
bottom: 0
}, options.padding || {});
$this.data("pin", {
pad: pad,
from: (options.containerSelector ? containerOffset.top : offset.top) - pad.top,
to: containerOffset.top + $container.height() - $this.outerHeight() - pad.bottom,
end: containerOffset.top + $container.height(),
parentTop: parentOffset.top
});
$this.css({width: $this.outerWidth()});
$this.parent().css("height", $this.outerHeight());
}
};
var onScroll = function () {
if (disabled) { return; }
scrollY = $window.scrollTop();
var elmts = [];
for (var i=0, len=elements.length; i<len; i++) {
var $this = $(elements[i]),
data = $this.data("pin");
if (!data) { // Removed element
continue;
}
elmts.push($this);
var from = data.from - data.pad.bottom,
to = data.to - data.pad.top;
if (from + $this.outerHeight() > data.end) {
$this.css('position', '');
continue;
}
if (from < scrollY && to > scrollY) {
!($this.css("position") == "fixed") && $this.css({
left: $this.offset().left,
top: data.pad.top
}).css("position", "fixed");
if (options.activeClass) { $this.addClass(options.activeClass); }
} else if (scrollY >= to) {
$this.css({
left: "",
top: to - data.parentTop + data.pad.top
}).css("position", "absolute");
if (options.activeClass) { $this.addClass(options.activeClass); }
} else {
$this.css({position: "", top: "", left: ""});
if (options.activeClass) { $this.removeClass(options.activeClass); }
}
}
elements = elmts;
};
var update = function () { recalculateLimits(); onScroll(); };
this.each(function () {
var $this = $(this),
data = $(this).data('pin') || {};
if (data && data.update) { return; }
elements.push($this);
$("img", this).one("load", recalculateLimits);
data.update = update;
$(this).data('pin', data);
});
$window.scroll(onScroll);
$window.resize(function () { recalculateLimits(); });
recalculateLimits();
$window.on('load', update);
return this;
};
})(jQuery);

View File

@ -0,0 +1 @@
(function(e){"use strict";e.fn.pin=function(t){var n=0,r=[],i=false,s=e(window);t=t||{};var o=function(){for(var n=0,o=r.length;n<o;n++){var u=r[n];if(t.minWidth&&s.outerWidth()<=t.minWidth){if(u.parent().is(".pin-wrapper")){u.unwrap()}u.css({width:"",left:"",top:"",position:""});if(t.activeClass){u.removeClass(t.activeClass)}i=true;continue}else{i=false}var a=t.containerSelector?u.closest(t.containerSelector):e(document.body);var f=u.offset();var l=a.offset();var c=u.offsetParent().offset();if(!u.parent().is(".pin-wrapper")){u.wrap("<div class='pin-wrapper'>")}var h=e.extend({top:0,bottom:0},t.padding||{});u.data("pin",{pad:h,from:(t.containerSelector?l.top:f.top)-h.top,to:l.top+a.height()-u.outerHeight()-h.bottom,end:l.top+a.height(),parentTop:c.top});u.css({width:u.outerWidth()});u.parent().css("height",u.outerHeight())}};var u=function(){if(i){return}n=s.scrollTop();var o=[];for(var u=0,a=r.length;u<a;u++){var f=e(r[u]),l=f.data("pin");if(!l){continue}o.push(f);var c=l.from-l.pad.bottom,h=l.to-l.pad.top;if(c+f.outerHeight()>l.end){f.css("position","");continue}if(c<n&&h>n){!(f.css("position")=="fixed")&&f.css({left:f.offset().left,top:l.pad.top}).css("position","fixed");if(t.activeClass){f.addClass(t.activeClass)}}else if(n>=h){f.css({left:"",top:h-l.parentTop+l.pad.top}).css("position","absolute");if(t.activeClass){f.addClass(t.activeClass)}}else{f.css({position:"",top:"",left:""});if(t.activeClass){f.removeClass(t.activeClass)}}}r=o};var a=function(){o();u()};this.each(function(){var t=e(this),n=e(this).data("pin")||{};if(n&&n.update){return}r.push(t);e("img",this).one("load",o);n.update=a;e(this).data("pin",n)});s.scroll(u);s.resize(function(){o()});o();s.load(a);return this}})(jQuery)