body {
    font-family: Arial, sans-serif;
    background: #1a1a1a;
    color: #e0e0e0;
    padding: 40px 20px;
    text-align: center;
    line-height: 1.5;
}

h2 {
    margin-bottom: 5px;
    font-weight: 600;
    font-size: 28px;
}

p {
    margin-bottom: 25px;
    opacity: 0.8;
}

.field {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 12px;
}

.note-input,
.len-input {
    background: #222;
    border: 1px solid #444;
    padding: 8px 10px;
    font-size: 15px;
    color: #e0e0e0;
    border-radius: 2px;
}

.note-input {
    width: 180px;
}

.len-input {
    width: 60px;
    text-align: center;
}

.note-input:focus,
.len-input:focus {
    border-color: #888;
    outline: none;
}

/* remove +/- arrows from the number input field */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
}

input[type=number] {
    -moz-appearance: textfield;
}

.output-row {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 15px;
    align-items: stretch;
}

#output {
    font-size: 22px;
    padding: 0 5px;
    font-family: monospace;
    letter-spacing: 2px;
    border: 1px solid #444;
    border-radius: 4px;
    background: #222;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #e0e0e0;
}

#copyBtn {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    font-size: 15px;
    padding: 0 12px;
    border-radius: 2px;
    box-sizing: border-box;
    background: #444;
    color: #e0e0e0;
    border: none;
    cursor: pointer;
}

#copyBtn:hover {
    background: #666;
}

#copyBtn:active {
    transform: scale(0.97);
}

/* dropdown */
.awesomplete > ul {
    background: #222 !important;
    border: 1px solid #444 !important;
    border-radius: 2px !important;

    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;

    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
}

/* remove arrow thingy */
.awesomplete > ul:before {
    display: none !important;
}

.awesomplete > ul[hidden],
.awesomplete > ul:empty {
    display: none !important;
}

/* dropdown item */
.awesomplete > ul > li {
    list-style: none;
    padding: 6px 10px !important;
    background: #222 !important;
    color: #e0e0e0 !important;
}

.awesomplete > ul > li:hover {
    background: #333 !important;
    color: #fff !important;
}

/* keyboard selection */
.awesomplete > ul > li[aria-selected="true"] {
    background: #444 !important;
    color: #fff !important;
}

