.site-command {
    display: inline-block;
    color: #35f28a !important;
    font-family: "Cascadia Mono", "JetBrains Mono", Consolas, "Courier New", monospace;
    font-weight: 700;
    letter-spacing: .055em;
    text-shadow: 0 0 4px rgba(53, 242, 138, .88), 0 0 13px rgba(16, 185, 129, .5);
    animation: site-command-flicker 4.2s infinite steps(1, end);
}

.site-command::before {
    content: "> ";
    color: #a7f3d0;
    animation: site-command-cursor 1.05s infinite steps(1, end);
}

.site-command--compact {
    font-size: .72rem;
    white-space: nowrap;
}

.site-command-label,
.site-command-panel,
.site-command-panel label,
.site-command-panel p,
.site-command-panel small,
.site-command-panel .text-muted {
    color: #35f28a !important;
}

.site-command-line {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: .35rem;
    width: fit-content;
    max-width: 100%;
    color: #35f28a;
    font-family: "Cascadia Mono", "JetBrains Mono", Consolas, "Courier New", monospace;
}

.site-command-argument {
    display: inline-flex;
    align-items: center;
    flex: 0 1 auto;
    min-width: 0;
    color: #a7f3d0;
}

.site-command-line > .site-command {
    flex: 0 0 auto;
}

.site-command-bracket {
    flex: 0 0 auto;
    color: #a7f3d0;
    font-family: "Cascadia Mono", "JetBrains Mono", Consolas, "Courier New", monospace;
    font-size: 1.15em;
    font-weight: 700;
    line-height: 1;
    text-shadow: 0 0 7px rgba(53, 242, 138, .6);
}

.input-prefix-suffix:has(.site-command-input) {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
}

.input-prefix-suffix:has(.site-command-input) .prefix,
.input-prefix-suffix:has(.site-command-input) .suffix,
.input-prefix-suffix:has(.site-command-input) .input-group-text {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.site-command-panel {
    position: relative;
    overflow: hidden;
    padding: .65rem;
    border-color: rgba(16, 185, 129, .72) !important;
    background: rgba(1, 18, 10, .92) !important;
    box-shadow: inset 0 0 18px rgba(5, 150, 105, .12), 0 0 10px rgba(16, 185, 129, .16);
}

.site-command-panel::after {
    position: absolute;
    z-index: 0;
    top: -55%;
    right: 0;
    left: 0;
    height: 32%;
    content: "";
    pointer-events: none;
    background: linear-gradient(180deg, transparent, rgba(52, 211, 153, .08), transparent);
    animation: site-command-scan 5.5s linear infinite;
}

.site-command-panel > * {
    position: relative;
    z-index: 1;
}

.site-command-line input.site-command-input:not([type="checkbox"]),
.site-command-panel input.site-command-input:not([type="checkbox"]),
.site-command-console input.site-command-input:not([type="checkbox"]),
.input-prefix-suffix input.site-command-input:not([type="checkbox"]) {
    box-sizing: border-box !important;
    width: 10rem !important;
    max-width: min(10rem, 48vw) !important;
    min-width: 0;
    padding: .2rem .35rem !important;
    color: #6fffa9 !important;
    caret-color: #6fffa9;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0;
    background: rgba(167, 243, 208, .24) !important;
    box-shadow: none !important;
    font-family: inherit;
    appearance: none;
}

.site-command-argument--amount input.site-command-input {
    width: 4.5rem !important;
}

.site-command-line input.site-command-input:not([type="checkbox"])::placeholder,
.site-command-panel input.site-command-input:not([type="checkbox"])::placeholder,
.site-command-console input.site-command-input:not([type="checkbox"])::placeholder,
.input-prefix-suffix input.site-command-input:not([type="checkbox"])::placeholder {
    color: rgba(110, 255, 169, .58) !important;
    opacity: 1;
}

.site-command-console {
    position: relative;
    display: grid;
    grid-template-columns: minmax(15rem, auto) auto auto 3.2rem;
    gap: .7rem;
    align-items: center;
    width: 100%;
    margin: 1rem 0 1.5rem;
    padding: .9rem 1rem;
    color: #35f28a;
    border: 1px solid rgba(52, 211, 153, .72);
    border-radius: .4rem;
    background: linear-gradient(100deg, rgba(1, 12, 7, .98), rgba(2, 30, 17, .95));
    box-shadow: inset 0 0 24px rgba(16, 185, 129, .1), 0 0 16px rgba(16, 185, 129, .16);
    font-family: "Cascadia Mono", "JetBrains Mono", Consolas, "Courier New", monospace;
}

.site-command-console--blocked {
    grid-template-columns: minmax(15rem, auto) 1fr;
    opacity: .72;
}

.site-command-console__command {
    white-space: nowrap;
}

.site-command-console__amount {
    width: 4.5rem;
}

.site-command-submit,
.site-command-panel button,
.site-noise-modal button {
    min-height: 2.45rem;
    color: #6fffa9 !important;
    border: 1px solid #35f28a !important;
    border-radius: .25rem;
    background: #031a0e !important;
    box-shadow: 0 0 10px rgba(53, 242, 138, .28), inset 0 0 10px rgba(53, 242, 138, .08);
    font-family: "Cascadia Mono", "JetBrains Mono", Consolas, "Courier New", monospace;
    font-weight: 800;
    cursor: pointer;
}

.site-command-submit {
    font-size: 1.65rem;
    line-height: 1;
    animation: site-command-submit-pulse 1.1s infinite steps(2, end);
}

.site-command-submit:hover,
.site-command-submit:focus,
.site-command-panel button:hover,
.site-command-panel button:focus,
.site-noise-modal button:hover,
.site-noise-modal button:focus {
    color: #021108 !important;
    background: #35f28a !important;
    box-shadow: 0 0 18px rgba(53, 242, 138, .72);
}

.site-noise-modal {
    position: fixed;
    z-index: 100000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 1rem;
    opacity: 0;
    background: rgba(0, 8, 4, .82);
    backdrop-filter: blur(3px);
    transition: opacity .18s ease;
}

.site-noise-modal.is-visible {
    opacity: 1;
}

.site-noise-modal__window {
    position: relative;
    width: min(30rem, 100%);
    overflow: hidden;
    padding: 1.4rem;
    color: #6fffa9;
    border: 1px solid #35f28a;
    border-radius: .35rem;
    background: #020f09;
    box-shadow: 0 0 38px rgba(53, 242, 138, .3), inset 0 0 28px rgba(16, 185, 129, .12);
    font-family: "Cascadia Mono", "JetBrains Mono", Consolas, "Courier New", monospace;
}

.site-noise-modal__window::after {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
    background: repeating-linear-gradient(0deg, transparent 0 3px, rgba(53, 242, 138, .025) 3px 4px);
}

.site-noise-modal__title {
    margin: .85rem 0 1rem;
    color: #35f28a;
    font-size: 1.2rem;
    text-shadow: 0 0 10px rgba(53, 242, 138, .62);
}

.site-noise-modal__levels {
    display: grid;
    gap: .55rem;
    margin-bottom: 1.1rem;
}

.site-noise-modal__level {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.site-noise-modal__close {
    position: relative;
    z-index: 1;
    width: 100%;
    font-size: 1.35rem;
}

body.site-noise-modal-open {
    overflow: hidden;
}

.site-command-line input.site-command-input:not([type="checkbox"]):focus,
.site-command-panel input.site-command-input:not([type="checkbox"]):focus,
.site-command-console input.site-command-input:not([type="checkbox"]):focus,
.input-prefix-suffix input.site-command-input:not([type="checkbox"]):focus {
    background: rgba(53, 242, 138, .16) !important;
    box-shadow: inset 0 -1px 0 #34d399, 0 0 10px rgba(16, 185, 129, .22) !important;
}

input.site-command-input[type="checkbox"] {
    width: 1rem !important;
    height: 1rem !important;
    accent-color: #35f28a;
}

@keyframes site-command-flicker {
    0%, 18%, 21%, 74%, 100% { opacity: 1; }
    19%, 75% { opacity: .72; }
    20% { opacity: .9; }
}

@keyframes site-command-cursor {
    0%, 48% { opacity: 1; }
    49%, 100% { opacity: .22; }
}

@keyframes site-command-scan {
    from { transform: translateY(0); }
    to { transform: translateY(500%); }
}

@keyframes site-command-submit-pulse {
    0%, 54%, 100% { opacity: 1; text-shadow: 0 0 7px #35f28a; }
    55%, 75% { opacity: .52; text-shadow: none; }
}

@media (max-width: 760px) {
    .site-command-console,
    .site-command-console--blocked {
        grid-template-columns: 1fr;
    }

    .site-command-submit {
        width: 100%;
    }

    .site-command-console .site-command-argument {
        width: fit-content;
        max-width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-command,
    .site-command::before,
    .site-command-panel::after,
    .site-command-submit {
        animation: none;
    }
}
