/*==========Reset==========-------------------------------*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em,
img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table,
caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output,
ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

img { vertical-align: bottom; max-width: 100%; }

table {
	border-collapse: collapse;
	border-spacing: 0;
}


*, *::before, *::after {
    box-sizing: border-box;
}

*::before, *::after {
    pointer-events: none;
}

.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

/*========================*/
/*Universal*/
/*========================*/

/*Fonts*/
@font-face {
    font-family: 'RiiMonaka';
    src: url(../font/riimonakabl.otf);
    font-weight: normal;
}

@font-face {
    font-family: 'RiiMonaka';
    src: url(../font/riimonakabr.otf);
    font-weight: bold;
}

@font-face {
    font-family: 'Kiwi Maru';
    src: url(../font/kiwimaru-regular.ttf);
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Kiwi Maru';
    src: url(../font/kiwimaru-medium.ttf);
    font-weight: bold;
    font-style: normal;
}

:root {
/*Colors*/
    --bodytext: #6F6293;
    
    --white: #F2EDF3;
    --gray: #D4D0DF;
    
    --primary-light: #F1E5F3;
    --primary-dark: #C9C9F2;
    
    --attn: #6FA57B;

/*Sizes*/
    --wrapper-width: 888px;
    --miniwrapper-width: 520px;
    --sidenav-width: 312px;
    
    --content-height: 94vh;
    
    --letter-spacing: 1pt;
    --letter-spacing-sm: .5pt;
    
    --content-side-padding: 40px;
    --content-top-padding: 64px;
    --side-padding: 24px;
    --side-padding-sm: 12px;
    
    
    --lace-h: 32px;
    --lace-v: 50px;
    
/*Fonts*/
    
    --body: normal normal 400 .9rem/1.4rem Verdana, 'Kiwi Maru', sans-serif;
    --body-sm: normal normal 400 .7rem/1rem Verdana, sans-serif;

    /*  false small-caps, set letter-spacing and text-transform  */
    --body-sc: normal normal 600 .65rem/1.2rem Verdana, sans-serif;
    
    --heading: normal normal 600 1rem/1rem 'Kiwi Maru', 'Arial', sans-serif;
    --nav: normal small-caps 400 .65rem/1.2rem Verdana, 'Kiwi Maru', sans-serif;
    --handwriting: 1.25rem 'RiiMonaka', 'Arial', sans-serif;
    --numbers: normal normal 600 .65rem/1rem Consolas, Monaco, Verdana, monospace; 

    
/*Other*/
    --text-outline: var(--white) 1px 1px, var(--white) 1px -1px, var(--white) -1px 1px, var(--white) -1px -1px;
    --text-outline-dark: var(--gray) 1px 1px, var(--gray) 1px -1px, var(--gray) -1px 1px, var(--gray) -1px -1px;
    
    --speed: .1s;
}

::selection {
    color: var(--white);
    background: var(--gray);
}


/*Scrollbars*/
* { scrollbar-color: var(--primary-light) var(--gray); }

*::-webkit-scrollbar { width: 36px; }
*::-webkit-scrollbar-track { background: var(--gray); }
*::-webkit-scrollbar-thumb { background-color: var(--primary-dark); }

.skip {
    display: none
}
.quote::before {
    content: open-quote;
}
.quote::after {
    content: close-quote;
}


/*========================*/

html { font-size: 16px; }
body {
    color: var(--bodytext);
    font: var(--body);
    width: 100%;
    min-height: 100vh;
    image-rendering: smooth;
    overflow-x: hidden;
    align-items: center;
    background-color: var(--primary-dark);
    background-image: url(../layout/background/tulip.svg), url(../layout/background/dot.svg);
    background-size: 600px, 16px;
    overflow-y: auto;
    display: flex;
}

main {
    filter: drop-shadow(2px -2px 0 var(--primary-dark)) drop-shadow(-2px 2px 0 var(--primary-dark)) drop-shadow(-2px -2px 0 var(--primary-dark)) drop-shadow(2px 2px 0 var(--primary-dark));
}


p:last-child { margin-bottom: 0}

p {
    margin-bottom: 1rem;
    text-align: justify;
}

a, button { color: inherit; }
a, a:active, a:visited { text-decoration: none; }

h2, h3, h4, h5, th, .title  {;
    letter-spacing: var(--letter-spacing);
}

h1,h2,h3,h4 {
    font: var(--heading);
}

h1 {
    font-size: 3rem;
    font-weight: 600;
    line-height: 1;
    text-transform: capitalize;
    margin-bottom: 1.5rem;
    position: relative;
}


h1 ~ h2 { 
    margin: -1rem 0 0 0;
    position: relative;
    z-index: 1;
    text-transform: uppercase;
}

h2 {
    font-size: 1.5rem;
    font-weight: 600;
    text-transform: lowercase;
    margin-top: 2rem;
    margin-bottom: .5rem;
}

h2, h3 {
    line-height: 1.5rem;

}

h3 {
    font-size: 1.25rem;
    font-weight: bold;
    letter-spacing: var(--letter-spacing);
    background: url(../layout/deco/flower.svg) no-repeat top left;
    background-size: 32px;
    padding: 8px 0 0 16px;
    margin-left: -16px;
    margin-bottom: 1rem;
    text-shadow: var(--text-outline);
}


h4 {
    font-weight: bold;
    background-size: contain;
    padding-left: 4px;
    border-left: var(--primary-dark) 8px solid;
    margin-bottom: 0.5rem;
}

summary {
    border-bottom: var(--outline); 
    padding: 0 var(--content-side-padding);
}

summary:hover {
    background-color: var(--primary-dark)
}

hr {
    width: calc(100% + 40px);
    height: 12px;
    padding: 5px 22px;
    background: url(../layout/deco/ribbon.svg) center left, url(../layout/deco/ribbon.svg) center right, var(--gray);
    background-repeat: no-repeat;
    background-size: 16px;
    background-clip: padding-box, padding-box, content-box;
    border: none;
    margin: 2rem 0 2rem -20px;
}

i { font-style: italic; }
b { font-weight: 600; }

table {
    text-align: left;
    margin: .5rem 0 2rem 0;
}

ol, ul {
    margin-bottom: 2rem;
}

ul {
    list-style: none;
}
li {
    line-height: 1.75;
}
ul li::before { 
    content: '';
    width: 20px;
    height: 1em;
    display: inline-block;
    background: url(../layout/deco/ribbon.svg) no-repeat left 2px;
    background-size: 14px;
    margin-left: -20px;
}

ul p {
    font: var(--body-sm);
}

/*==========Parts & Pieces==========-------------------------------*/

/*Links*/

a:hover, .webring a:hover { 
    color: var(--attn);
    text-shadow: var(--text-outline);
}

p a, li a {
    text-decoration: underline dotted;
    background: var(--primary-light);
}

p a:hover, li a:hover {
    background: var(--primary-light);
}

button {
    font: var(--body-sc);
    text-transform: uppercase;
    letter-spacing: var(--letter-spacing);
    text-shadow: var(--text-outline);   
    padding: 2px 4px;
    background: var(--gray);
    -webkit-transition: all 0.1s;
	transition: all 0.1s;
    background: var(--primary-light);
    border: none;
    text-wrap: nowrap;
}
button:hover {
    color: var(--attn);
    background: var(--primary-light);
}

a.hidden, .webring a, #content .entry h6 a  { 
    color: var(--bodytext);
    background: none;
}

h3 {
    background: url(../layout/deco/ribbon.svg) no-repeat left center;
    background-size: 24px;
    padding-left: 28px;
    margin-bottom: 0;
    margin-top: 6px;
    margin-left: unset;
}
h6 {
    border: currentcolor 1px dotted;
    border-width: 1px 0;
}

main {
    max-width: 600px;
    margin: 0 auto;
    padding: var(--lace-h);
}

.top {
    margin-bottom: 2rem;
}

.sitename {
    width: 100%;
}

.sitename h1 {
    font-family: 'RiiMonaka';
    text-transform: lowercase;
    line-height: .5;
    text-shadow: -3px 0 var(--primary-light), 0 3px var(--primary-light), 3px 0 var(--primary-light), 0 -3px var(--primary-light);
    display: flex;
    justify-content: space-between;
}
.sitename span {
    display: block;
    position: relative;
}
.sitename span::after {
    content: attr(letter);
    position: absolute;
    left: 0;
    text-shadow: var(--text-outline-bold);
}

.sitename span.dot {
    color: var(--white);
    font-size: 2.5rem;
    margin-top: 4px;
    padding-bottom: 6px;
}

.components {
    display: flex;
}

.components img {
    max-height: 100%;
}

.left, .right, .bottom {
    display: flex;
}
.left, .right {
    height: 100%;
    flex-direction: column;
    justify-content: space-between;
}

.right {
    flex: 0 1 280px;
}

.zucchinibear {
    width: calc(100% + 100px);
    margin-left: -50px;
    margin-top: -20px;
    pointer-events: none;
}
.zucchinibear img {
    display: block;
    width: 100%;
    object-fit: contain;
}

/*Left*/

.hello {
    padding-right: var(--side-padding-sm);
    text-align: justify;
}

.buttons {
    width: 100%;
    display: flex;
    margin-bottom: 0;
}
.buttons li::before {
    content: none;
}

.buttons:nth-of-type(1)::after, .buttons:nth-of-type(2)::before {
    content: '';
    width: 100%;
    position: relative;
    border-bottom: var(--primary-light) 2px solid;
    margin-bottom: 11px;
}

.buttons:last-of-type {
    padding-right: 6px;  
}

.buttons:nth-of-type(1) .button { margin-right: 6px; }
.buttons:nth-of-type(2) .button { margin-left: 6px; }

.webring a, a.postDate { border: transparent 1px solid }

/*Webring*/

.webrings {
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    align-items: center;
    justify-content: center;
}

#SDHandHold {
    font: var(--body-sm);
    letter-spacing: var(--letter-spacing);
    padding: 2px;
    background: var(--primary-light);
    border: var(--outline);
    margin: 1rem auto;
    width: 236px;
}
#SDHandHold::after {
  content: "";
  clear: both;
  display: table;
}

.webring table { margin: 0; width: 100%; }


#SDHandHold > a { 
    float: left;
}

#SDHandHold img {
    display: flex;
    width: 36px;
}
.SDHandHoldName { white-space: nowrap;}
.SDHandHoldNav {
    display: flex;
    justify-content: space-between;
    width: calc(100% - 40px);
}

/*Bottom*/

.bottom .notice {
    width: 100%;
    font: var(--body-sm);
    margin-top: 1rem;
    padding: 6px;
    background: var(--primary-light);
}
.bottom .notice p {
    text-align: left;
}

@media screen and (max-width: 800px) {
    
    
    h1 {
        font-size: 2.5rem;
    }
    
        
    main {
        max-width: 100%;
        padding: var(--side-padding);
    }
    
    .zucchinibear {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    
    .components > div:first-child {
        display: block;
        height: unset;
        margin: 2rem auto;
    }
    .left, .right, #log { width: 100%; }
    .right { height: 50vh; }
        
    .webrings { padding-right: 0; }
    
}
