/* _layout.sass */

/* Variables */
$spacing-unit: 1.5rem
$section-spacing: 2rem
$border-radius: 8px

html
    background: darken($background, 3%)

/* Base Layout */
body
    background: $background
    color: $text
    font-family: 'Segoe UI', 'Helvetica Neue', Arial, sans-serif
    width: 100%
    height: 100%
    max-width: 1024px
    margin: $spacing-unit auto
    padding: $spacing-unit
    box-sizing: border-box
    border-radius: $border-radius

header
    background: $surface
    margin: $spacing-unit
    padding: $spacing-unit
    display: flex
    flex-wrap: wrap
    align-items: center
    justify-content: space-between
    border-radius: $border-radius
    margin: 0 auto

header h1, header h1 a
    margin: 0
    font-size: 1.6rem
    font-weight: 900
    color: $text
    text-decoration: none
    padding: 0
    transition: color 0.4s ease-in-out
    &:hover, &:focus
        color: $accent-light

nav
    display: flex
    gap: $spacing-unit
    align-items: center

nav ul
    list-style: none
    margin: 0
    padding: 0
    display: flex
    gap: 0.5rem
    flex-wrap: wrap

nav ul li
    margin: 0
    padding: 0

nav ul li a
    padding: 0.4rem 0.6rem
    border-radius: $border-radius
    background: $primary-dark
    color: $text
    text-decoration: none
    font-weight: 500
    transition: background 0.4s ease-in-out
    &:hover, &:focus
        background: $accent-dark
        color: $text

@media (max-width: 600px)
    header
        flex-direction: column
        align-items: flex-start
        gap: $spacing-unit

    nav
        width: 100%
        justify-content: flex-start
        margin-top: $spacing-unit

main
    margin: $spacing-unit 0
    padding: $spacing-unit

footer
    background: $surface
    margin: $spacing-unit
    padding: $spacing-unit
    border-radius: $border-radius
    margin: 0 auto
    text-align: center

footer p
    margin: 0
    font-size: 0.9rem
    color: $text-subtle
    text-align: center

section
    border-bottom: 3px solid $surface
    margin: $section-spacing 0
    padding-bottom: $section-spacing

#page-header 
    border-bottom: 3px solid $surface
    margin: $section-spacing 0
    padding-bottom: $section-spacing
    text-align: center
    h1
        margin: 0
        width: 100%
        font-size: 3rem
        word-break: break-word
    .subtitle
        margin: 0
        width: 100%
        font-size: 1.2rem
        font-weight: 300
        color: $text-subtle
.time
    font-size: 0.8rem
    color: $text-subtle
    text-align: center

article
    background: $surface
    border-radius: 8px
    padding: $spacing-unit
    margin: $spacing-unit 0
    position: relative
    transition: background 0.5s ease-in-out
    &:hover, &:focus
        background: $primary-dark
    h3
        margin: 0
        font-size: 1.5rem
        font-weight: 700
        color: $text
    a
        color: $text
        position: absolute
        top: 0
        left: 0
        width: 100%
        height: 100%
        z-index: 1
        text-indent: -9999px
        overflow: hidden
        text-decoration: none
        transition: color 0.3s ease-in-out
        &:hover, &:focus
            color: $accent-light
    &:not(a)
        position: relative
        z-index: 2
    p
        margin: 0.5rem 0
        font-size: 1rem
        color: $text
        font-weight: 300

    .subtitle
        margin: 0 0 0 0.5rem
        width: 100%
        font-size: 1.1rem
        font-weight: 300
        color: $text-subtle

.term-title
    font-weight: 700
    padding: 0.3rem 0.8rem
    margin-bottom: 0.5rem
    border-radius: $border-radius

p code
    background: darken($primary-dark,10%)
    margin: 0 0.2rem
    padding: 0.2rem 0.4rem
    border-radius: 5px
    font-size: 0.8rem

pre
    padding: 0.5rem
    border-radius: 5px
    overflow-x: auto
    code
        font-size: 0.8rem
