/*! modern-normalize v3.0.1 | MIT License | https://github.com/sindresorhus/modern-normalize */

/*
Document
========
*/

/**
Use a better box model (opinionated).
*/

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

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the line height in all browsers.
3. Prevent adjustments of font size after orientation changes in iOS.
4. Use a more readable tab size (opinionated).
*/

html {
    font-family:
        system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'; /* 1 */
    line-height: 1.15; /* 2 */
    -webkit-text-size-adjust: 100%; /* 3 */
    tab-size: 4; /* 4 */
}

/*
Sections
========
*/

/**
Remove the margin in all browsers.
*/

body {
    margin: 0;
}

/*
Text-level semantics
====================
*/

/**
Add the correct font weight in Chrome and Safari.
*/

b,
strong {
    font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
    font-family: ui-monospace, SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace; /* 1 */
    font-size: 1em; /* 2 */
}

/**
Add the correct font size in all browsers.
*/

small {
    font-size: 80%;
}

/**
Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
*/

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/*
Tabular data
============
*/

/**
Correct table border color inheritance in Chrome and Safari. (https://issues.chromium.org/issues/40615503, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/

table {
    border-color: currentcolor;
}

/*
Forms
=====
*/

/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/

button,
input,
optgroup,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 1 */
    line-height: 1.15; /* 1 */
    margin: 0; /* 2 */
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/

button,
[type='button'],
[type='reset'],
[type='submit'] {
    -webkit-appearance: button;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/

legend {
    padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
    vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto;
}

/**
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
    -webkit-appearance: textfield; /* 1 */
    outline-offset: -2px; /* 2 */
}

/**
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to 'inherit' in Safari.
*/

::-webkit-file-upload-button {
    -webkit-appearance: button; /* 1 */
    font: inherit; /* 2 */
}

/*
Interactive
===========
*/

/*
Add the correct display in Chrome and Safari.
*/

summary {
    display: list-item;
}

/*
APP STYLES
================================================================================================================
*/

:root {
    --sans:
        Inter, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
        'Noto Color Emoji';
    --serif: Georgia, serif;

    --positive-text: oklch(0.41660941048909605 0.0673302584587661 176.45061585268638);
    --positive-bg: oklch(0.9421297351441882 0.03716408045602811 178.04243219359785);
    --negative-text: oklch(0.4440404560750508 0.13323793427341057 32.0585383679612);
    --negative-bg: oklch(0.9445501228384328 0.024726189127451847 29.87795001221005);
    --warning-text: oklch(0.4520689571827139 0.0961148162691226 57.06845838474611);
    --warning-bg: oklch(0.9540103836401782 0.054879271876297535 96.82068890424667);
}

html {
    font-family: var(--sans);
    font-size: 100%;
    display: grid;
    justify-content: center;
    grid-template-columns: min(30rem, 90vw);
    background-color: oklch(0.9778701989649833 0.0041275481400082185 56.43821251220534);
    color: oklch(0.2903638304034356 0.04510521893393582 249.60793765273496);
}

:where(h1, h2, h3, h4, h5, h6) {
    line-height: 1.4;
    /*letter-spacing: -0.011em;*/
    margin-bottom: 0.5rlh;
    font-weight: 450;
}

:where(h1, h2, h3) {
    text-wrap: balance;
}

header {
    padding-block-start: 2rlh;

    text-align: center;

    .logo {
        width: 100px;
    }
}

.current-status {
    border-radius: 0.3em;
    padding: 1em;
    text-align: center;
    font-size: 1.3rem;

    &[status='operational'] {
        color: var(--positive-text);
        background-color: var(--positive-bg);
    }

    &[status='major'] {
        color: var(--negative-text);
        background-color: var(--negative-bg);
    }

    &[status='partial'] {
        color: var(--warning-text);
        background-color: var(--warning-bg);
    }
}

footer {
    font-size: smaller;
}

body {
    min-height: 100vh;
    display: grid;
    grid-template-rows: 1fr min-content;

    footer {
        text-align: center;
    }
}

article {
    border-radius: 12px;
    box-shadow: 0 4px 4px oklch(0% 0 0 / 0.06);
    padding: 1em;
    background-color: white;

    & + article {
        margin-block-start: 2rlh;
    }

    > :first-child {
        margin-block-start: 0;
    }

    footer {
        display: flex;
        align-items: baseline;
        gap: 1em;
    }
}

.past-updates {
    margin-block: 2rlh;

    summary {
        font-weight: bold;
        cursor: pointer;
    }

    &:open::details-content {
        margin-block-start: 1rlh;
    }
}
