:root {
    --keyboard-height: 0px;
}

html, body {
    height: 100%;
}

html {
    box-sizing: border-box;
}

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

body {
    margin: 0;
    font-family: system-ui, sans-serif;
    overflow: hidden;
    background-color: #f1f1f1;
    --keyboard-space: env(keyboard-inset-height, var(--keyboard-height, 0px));
}

input {
    font-size: 1rem;
    padding: 0.5rem;
    width: 100%;
}

.container {

    height: 100%;
    display: grid;
    grid-template-rows: auto 1fr auto;
    overflow: hidden;
}

.header {
    background-color: #6eb118;
    color: #fff;
    padding: 24px 12px;
    text-align: center;
}

.content {
    overflow: hidden;
    height: 100%;
    padding: 24px;
    position: relative;
    display: grid;
    place-items: center;
}

.compose {
    width: 100%;
    background-color: #ddd;
    padding:12px 8px;
    position: fixed;
    top: calc(100% - var(--keyboard-space));
    left: 0;
    transition: opacity 0.3s ease-in-out;
    transform: translateY(-100%);
    opacity: 0;
}

.is-active .compose {
    opacity: 1;
}

.circle {
    width: min(100%, calc(100vh - 180px));
    min-width: min(100%, 360px);
    max-width: 560px;
    object-fit: contain;
    border: 10px solid #ddd;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
    margin: auto;
    display:grid;
    place-items: center;
}

.circle-content {
    width: 100%;
    display:grid;
    place-items: center;
    gap: 12px;
}