:root {
    --bg-color: #fbf0d9;
    --text-primary: #2c2825;
    --text-secondary: #453f3a;
    --accent-color: #d1c1a5;
    --dropzone-hover: #f2e4c6;
}

@font-face {
    font-family: 'Merriweather';
    src: url('../assets/fonts/Merriweather-VariableFont_opsz\,wdth\,wght.ttf') format('truetype');
    font-weight: 300 900;
}

::-webkit-scrollbar {
    width: 4px;
}
::-webkit-scrollbar-track {
    background: transparent; 
}
::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2); 
    border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.4); 
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Merriweather', Roboto, Helvetica, Arial, sans-serif;
    background-color: var(--bg-color);
    color: var(--text-primary);
    line-height: 1.6;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    padding: 20px;
}

.container {
    width: 100%;
    max-width: 30em;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0rem;
}

.logo {
    height: 8em;
    width: 20em;
    display: block;
    background-color: var(--text-primary);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2000 2000'%3E%3Cpath d='M1009 852.6c-14.6 1.8-26.8 3.3-27.2 3.4-.5 0-.8 4-.8 8.9v8.8l10.7 1.8c5.9.9 11.3 1.9 12 2.2 1.1.4 1.3 20.6 1.1 107.7l-.3 107.1-11 1.5-11 1.5-.3 9.7-.3 9.8h92.1v-19.6l-12-1.3-12-1.3V973.6l-.1-119.1-4-2.8c-4.8-3.3-3.8-3.3-36.9.9M1449.5 852.6c-14.3 1.8-26.3 3.3-26.7 3.3-.5.1-.8 4.1-.8 8.9v8.9l10.3 1.8c5.6 1 10.8 2 11.5 2.2.9.4 1.2 22.9 1.2 107.7v107.3l-9.2 1.4-9.3 1.4-.3 9.7-.3 9.8h85.2l-.3-9.8-.3-9.7-10-1.5-10-1.5-.3-19.5-.2-19.5 14.4-14.5c8-7.9 14.7-14.2 15-14 .2.3 8.5 15.6 18.5 34l18 33.5-8.2 1.5-8.2 1.5-.3 9.7-.3 9.8h86.1v-19.7l-8.8-1.2-8.8-1.2-27.7-47.2c-15.2-26-27.9-47.9-28.2-48.8-.4-1.1 5.2-7.1 19-20.4l19.7-18.8 11.1-1.9c17.6-2.9 15.7-1.4 15.7-11.8v-9h-85.1l.3 9.2.3 9.2 8.5 1.3c4.7.7 10 1.5 11.8 1.8l3.3.6-32.7 34c-17.9 18.6-32.7 33.9-32.7 33.9-.1 0-.1-38.2.1-84.9l.3-84.9-4.5-3.1c-5.4-3.8-4-3.8-37.1.5M1130 852.9c-12.9 4.2-20 14.1-20 27.5 0 10.4 4 17.4 12.4 21.9 3.3 1.8 5.8 2.2 13.1 2.2 7.8 0 9.7-.4 14.7-2.8 19-9.3 19.8-37.5 1.4-46.9-4.3-2.2-17.3-3.4-21.6-1.9M313 872.2c-6.9.3-29.5.9-50.2 1.3l-37.8.8v9.8c0 5.5.1 9.9.3 9.9.1 0 5.4.9 11.7 2s11.8 2 12.3 2c.4 0 .7 43.6.7 96.9 0 91.5-.1 97-1.7 97.5-1 .2-6.6 1-12.5 1.7l-10.8 1.2v19.4l41.3.9c77.9 1.6 88.6 1.2 108.2-3.7 26.7-6.8 44.8-22.5 52.1-45.3 3.1-9.7 4.4-28.6 2.5-37.7-4.9-23.4-24.5-38.6-54.3-42.1l-10-1.2 5.9-1.6c19.5-5.5 35-20.6 40.7-39.9 3.9-13.3 2.9-29.7-2.4-41-3.2-6.8-10.4-15.1-16.4-18.8-14.5-9.2-45.5-13.9-79.6-12.1m30.4 21.8c16.1 5 22.6 16.1 22.6 38.5 0 22.5-7.3 37.1-21.8 43.8-4.3 2-6.7 2.2-26 2.5l-21.2.4.2-43.4.3-43.3 9-.6c13.9-1 29.8-.1 36.9 2.1m2.6 109.1c12.6 2 22.7 8.6 27.5 17.9 4.3 8.3 5.7 27.5 3.1 40.2-4 18.8-15.5 30.1-34.3 33.8-7.4 1.5-38.4.9-42.5-.8l-2.8-1.2v-44.8c0-24.7.3-45.2.7-45.5 1-1.1 41.2-.8 48.3.4M874.9 931.5c-14.8 2.4-29.8 9.2-41 18.5-10.9 9.2-20.8 26.1-25.5 43.6-3.6 13.3-4.5 38.6-2 54.4 2.9 18.5 10.3 35.5 20.3 46.9 5.5 6.3 17 14.1 26 17.5 21.1 8 49.7 7.7 73.5-.9 10.1-3.6 22-10 27-14.5l4.2-3.7-3.8-8.7c-2.1-4.7-4.3-8.6-4.7-8.6-.5 0-2.6 1-4.7 2.3-15.7 9.8-43.9 14.1-58.4 8.9-19.1-6.9-30.4-25.1-33.3-53.5l-.7-6.7h106.1l.8-5.8c.4-3.1.8-13.1.8-22.2-.1-12.7-.5-18.1-1.9-23.5-5.8-21.8-20-36.4-41.6-42.5-9.9-2.8-29.2-3.5-41.1-1.5m23.9 22.5c4.5 2.3 6.9 4.3 9.1 7.7 5.1 7.7 6.4 14 6.5 30.8l.1 15-31.4.3-31.3.2.7-8.7c2.6-33.4 12.8-48 33.6-48.2 5.4-.1 7.7.4 12.7 2.9M1123.7 933.8l-28.8 3.6.3 11 .3 11.1 11.3 2.9 11.2 2.9-.2 63.6-.3 63.6-11.2 1.5-11.3 1.4v19.6h91.1l-.3-9.8-.3-9.7-10.7-1.4-10.8-1.3V937.1l-4.6-3.6c-2.6-1.9-5.2-3.4-5.8-3.4-.6.1-14.1 1.8-29.9 3.7M1233 933.6c-14 1.8-25.9 3.3-26.3 3.4-.4 0-.6 5-.5 11.2l.3 11.2 10.3 3 10.2 2.9v127.4l-9.2 1.4-9.3 1.4-.3 9.7-.3 9.8h85.1v-19.7l-9.5-1.3-9.5-1.3V974l6.8-4.4c11.3-7.3 19.1-9.9 30.7-10.4 14.8-.6 21.6 3 25.5 13.5 3.3 8.7 3.9 21.2 4 72.4v47.6l-8.7 1.4-8.8 1.4-.3 9.8-.3 9.7h84.1v-19.7l-9.9-1.2-10-1.3-.4-57.7c-.4-62.6-.6-64.2-6.4-78.9-3.4-8.3-11.4-17.1-18.4-20.1-24.1-10.4-60.5-3.7-86.3 15.8l-6.6 5v-20.6l-3.9-3.1c-2.2-1.8-4.6-3.1-5.3-3.1-.7.1-12.8 1.6-26.8 3.5M511 933c-17.4 4.1-36.1 11.6-47.2 19l-4.7 3.1 5.2 10.5c2.8 5.7 5.6 10.2 6.2 10 .5-.3 6-2.6 12-5 17.9-7.3 21.7-8.1 40.5-8.1 15.8 0 16.8.1 21.5 2.6 10 5.1 14.1 14.9 13.3 31.9l-.3 7.5-13.5.6c-33.4 1.6-64 11.9-78.6 26.4-9.3 9.4-13.3 19.3-13.4 33.1 0 15.7 5.1 28.7 15 38.5 10.8 10.5 22.7 15 40 15 17.5-.1 29.9-4.7 45.4-17.1l8.6-6.9v7c0 13.7 3.5 17 18.2 17 10.8 0 19.4-.7 31.1-2.8l8.7-1.5V1095h-17.5l-.1-56.8c-.1-53.1-.2-57.3-2.1-66.3-3.7-17.1-10.8-27.9-22.5-33.7-10.8-5.4-16.3-6.4-37.8-6.8-16.7-.3-20.7-.1-28 1.6m47 118.5v26.5l-4.2 3.1c-8.1 6-16.6 9.3-24.7 9.7-9.4.5-14.2-.9-19.7-6-5.9-5.5-8.6-12.7-8.8-23.8-.1-9.9 2.1-15.7 8.5-22.1 8-8 24.8-13.7 41.2-13.8l7.7-.1zM692.8 932c-24.8 4.2-44.1 18.6-49.5 36.9-2.1 7-2 19.7.1 27.8 2.6 10.5 5.5 15.3 13.7 23.4 8.3 8.2 6.5 7.2 49.9 28.2 19.5 9.5 23.8 12.5 26.9 19.2 2.7 5.8 2.7 11.8-.3 18.1-4.3 9.3-12.2 12.9-27.6 12.8-11.8-.1-19.1-1.8-26.1-6.3-4.5-2.8-4.5-2.9-8.3-15.9l-3.9-13.2H641v42.7l7.3 2.1c28.6 8.3 40 10.3 60 10.4 18.9.2 30.7-2.1 43.3-8.2 34.2-16.6 39.6-59.6 10.5-83.7-6.9-5.7-24.7-14.9-49.6-25.7-22.1-9.6-29.1-17.1-28.3-30.5.4-8.5 3.3-12.7 11.4-16.7 9.9-4.8 27.5-4.4 37 1 3.7 2 4 2.7 7.9 15.1l4.1 13 12.7.3 12.7.3v-42.6l-7.7-2.2c-19.2-5.5-31.3-7.3-48.5-7.2-9 .1-18.4.5-21 .9M1687.8 932c-18.9 3.2-35.4 12.7-43.6 25-5.4 8.1-7.3 14.5-7.3 25.1 0 19.3 7.2 33.5 22.5 44.3 7.2 5.1 12 7.6 32.2 16.6 15.7 7 27.1 13.2 32.2 17.5 7.8 6.6 9.5 19.4 3.6 27.7-2 2.9-4.9 5.3-8.9 7.3-5.7 2.8-6.6 3-17.5 2.9-12.4-.2-19.9-2.1-27.1-6.8-2.9-2-3.8-3.5-5.3-8.7-.9-3.5-2.6-9.4-3.8-13.2l-2-6.7H1636v42.8l11.3 3.1c28.7 7.8 36.8 9.2 56.1 9.3 11.9.1 17.2-.3 25.1-2 24.4-5.2 41.5-19.9 45.9-39.2 3.8-16.5.5-31.1-9.8-43.4-8-9.7-19.7-16.6-50.2-29.9-19.4-8.5-21.9-9.9-28.2-15.8-5.5-5.3-7.2-9.2-7.2-16.4 0-10.1 5.5-16.7 16.6-20.1 9.1-2.7 23.8-1.4 32.2 3 3.8 2 3.6 1.5 8.2 16.6l3.6 11.5 12.7.3 12.7.3v-42.6l-7.9-2.3c-19.3-5.5-30.7-7.2-48.1-7.1-9.1.1-18.6.5-21.2.9M981 1173v21h787v-42H981z'/%3E%3C/svg%3E");
    -webkit-mask-size: cover;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2000 2000'%3E%3Cpath d='M1009 852.6c-14.6 1.8-26.8 3.3-27.2 3.4-.5 0-.8 4-.8 8.9v8.8l10.7 1.8c5.9.9 11.3 1.9 12 2.2 1.1.4 1.3 20.6 1.1 107.7l-.3 107.1-11 1.5-11 1.5-.3 9.7-.3 9.8h92.1v-19.6l-12-1.3-12-1.3V973.6l-.1-119.1-4-2.8c-4.8-3.3-3.8-3.3-36.9.9M1449.5 852.6c-14.3 1.8-26.3 3.3-26.7 3.3-.5.1-.8 4.1-.8 8.9v8.9l10.3 1.8c5.6 1 10.8 2 11.5 2.2.9.4 1.2 22.9 1.2 107.7v107.3l-9.2 1.4-9.3 1.4-.3 9.7-.3 9.8h85.2l-.3-9.8-.3-9.7-10-1.5-10-1.5-.3-19.5-.2-19.5 14.4-14.5c8-7.9 14.7-14.2 15-14 .2.3 8.5 15.6 18.5 34l18 33.5-8.2 1.5-8.2 1.5-.3 9.7-.3 9.8h86.1v-19.7l-8.8-1.2-8.8-1.2-27.7-47.2c-15.2-26-27.9-47.9-28.2-48.8-.4-1.1 5.2-7.1 19-20.4l19.7-18.8 11.1-1.9c17.6-2.9 15.7-1.4 15.7-11.8v-9h-85.1l.3 9.2.3 9.2 8.5 1.3c4.7.7 10 1.5 11.8 1.8l3.3.6-32.7 34c-17.9 18.6-32.7 33.9-32.7 33.9-.1 0-.1-38.2.1-84.9l.3-84.9-4.5-3.1c-5.4-3.8-4-3.8-37.1.5M1130 852.9c-12.9 4.2-20 14.1-20 27.5 0 10.4 4 17.4 12.4 21.9 3.3 1.8 5.8 2.2 13.1 2.2 7.8 0 9.7-.4 14.7-2.8 19-9.3 19.8-37.5 1.4-46.9-4.3-2.2-17.3-3.4-21.6-1.9M313 872.2c-6.9.3-29.5.9-50.2 1.3l-37.8.8v9.8c0 5.5.1 9.9.3 9.9.1 0 5.4.9 11.7 2s11.8 2 12.3 2c.4 0 .7 43.6.7 96.9 0 91.5-.1 97-1.7 97.5-1 .2-6.6 1-12.5 1.7l-10.8 1.2v19.4l41.3.9c77.9 1.6 88.6 1.2 108.2-3.7 26.7-6.8 44.8-22.5 52.1-45.3 3.1-9.7 4.4-28.6 2.5-37.7-4.9-23.4-24.5-38.6-54.3-42.1l-10-1.2 5.9-1.6c19.5-5.5 35-20.6 40.7-39.9 3.9-13.3 2.9-29.7-2.4-41-3.2-6.8-10.4-15.1-16.4-18.8-14.5-9.2-45.5-13.9-79.6-12.1m30.4 21.8c16.1 5 22.6 16.1 22.6 38.5 0 22.5-7.3 37.1-21.8 43.8-4.3 2-6.7 2.2-26 2.5l-21.2.4.2-43.4.3-43.3 9-.6c13.9-1 29.8-.1 36.9 2.1m2.6 109.1c12.6 2 22.7 8.6 27.5 17.9 4.3 8.3 5.7 27.5 3.1 40.2-4 18.8-15.5 30.1-34.3 33.8-7.4 1.5-38.4.9-42.5-.8l-2.8-1.2v-44.8c0-24.7.3-45.2.7-45.5 1-1.1 41.2-.8 48.3.4M874.9 931.5c-14.8 2.4-29.8 9.2-41 18.5-10.9 9.2-20.8 26.1-25.5 43.6-3.6 13.3-4.5 38.6-2 54.4 2.9 18.5 10.3 35.5 20.3 46.9 5.5 6.3 17 14.1 26 17.5 21.1 8 49.7 7.7 73.5-.9 10.1-3.6 22-10 27-14.5l4.2-3.7-3.8-8.7c-2.1-4.7-4.3-8.6-4.7-8.6-.5 0-2.6 1-4.7 2.3-15.7 9.8-43.9 14.1-58.4 8.9-19.1-6.9-30.4-25.1-33.3-53.5l-.7-6.7h106.1l.8-5.8c.4-3.1.8-13.1.8-22.2-.1-12.7-.5-18.1-1.9-23.5-5.8-21.8-20-36.4-41.6-42.5-9.9-2.8-29.2-3.5-41.1-1.5m23.9 22.5c4.5 2.3 6.9 4.3 9.1 7.7 5.1 7.7 6.4 14 6.5 30.8l.1 15-31.4.3-31.3.2.7-8.7c2.6-33.4 12.8-48 33.6-48.2 5.4-.1 7.7.4 12.7 2.9M1123.7 933.8l-28.8 3.6.3 11 .3 11.1 11.3 2.9 11.2 2.9-.2 63.6-.3 63.6-11.2 1.5-11.3 1.4v19.6h91.1l-.3-9.8-.3-9.7-10.7-1.4-10.8-1.3V937.1l-4.6-3.6c-2.6-1.9-5.2-3.4-5.8-3.4-.6.1-14.1 1.8-29.9 3.7M1233 933.6c-14 1.8-25.9 3.3-26.3 3.4-.4 0-.6 5-.5 11.2l.3 11.2 10.3 3 10.2 2.9v127.4l-9.2 1.4-9.3 1.4-.3 9.7-.3 9.8h85.1v-19.7l-9.5-1.3-9.5-1.3V974l6.8-4.4c11.3-7.3 19.1-9.9 30.7-10.4 14.8-.6 21.6 3 25.5 13.5 3.3 8.7 3.9 21.2 4 72.4v47.6l-8.7 1.4-8.8 1.4-.3 9.8-.3 9.7h84.1v-19.7l-9.9-1.2-10-1.3-.4-57.7c-.4-62.6-.6-64.2-6.4-78.9-3.4-8.3-11.4-17.1-18.4-20.1-24.1-10.4-60.5-3.7-86.3 15.8l-6.6 5v-20.6l-3.9-3.1c-2.2-1.8-4.6-3.1-5.3-3.1-.7.1-12.8 1.6-26.8 3.5M511 933c-17.4 4.1-36.1 11.6-47.2 19l-4.7 3.1 5.2 10.5c2.8 5.7 5.6 10.2 6.2 10 .5-.3 6-2.6 12-5 17.9-7.3 21.7-8.1 40.5-8.1 15.8 0 16.8.1 21.5 2.6 10 5.1 14.1 14.9 13.3 31.9l-.3 7.5-13.5.6c-33.4 1.6-64 11.9-78.6 26.4-9.3 9.4-13.3 19.3-13.4 33.1 0 15.7 5.1 28.7 15 38.5 10.8 10.5 22.7 15 40 15 17.5-.1 29.9-4.7 45.4-17.1l8.6-6.9v7c0 13.7 3.5 17 18.2 17 10.8 0 19.4-.7 31.1-2.8l8.7-1.5V1095h-17.5l-.1-56.8c-.1-53.1-.2-57.3-2.1-66.3-3.7-17.1-10.8-27.9-22.5-33.7-10.8-5.4-16.3-6.4-37.8-6.8-16.7-.3-20.7-.1-28 1.6m47 118.5v26.5l-4.2 3.1c-8.1 6-16.6 9.3-24.7 9.7-9.4.5-14.2-.9-19.7-6-5.9-5.5-8.6-12.7-8.8-23.8-.1-9.9 2.1-15.7 8.5-22.1 8-8 24.8-13.7 41.2-13.8l7.7-.1zM692.8 932c-24.8 4.2-44.1 18.6-49.5 36.9-2.1 7-2 19.7.1 27.8 2.6 10.5 5.5 15.3 13.7 23.4 8.3 8.2 6.5 7.2 49.9 28.2 19.5 9.5 23.8 12.5 26.9 19.2 2.7 5.8 2.7 11.8-.3 18.1-4.3 9.3-12.2 12.9-27.6 12.8-11.8-.1-19.1-1.8-26.1-6.3-4.5-2.8-4.5-2.9-8.3-15.9l-3.9-13.2H641v42.7l7.3 2.1c28.6 8.3 40 10.3 60 10.4 18.9.2 30.7-2.1 43.3-8.2 34.2-16.6 39.6-59.6 10.5-83.7-6.9-5.7-24.7-14.9-49.6-25.7-22.1-9.6-29.1-17.1-28.3-30.5.4-8.5 3.3-12.7 11.4-16.7 9.9-4.8 27.5-4.4 37 1 3.7 2 4 2.7 7.9 15.1l4.1 13 12.7.3 12.7.3v-42.6l-7.7-2.2c-19.2-5.5-31.3-7.3-48.5-7.2-9 .1-18.4.5-21 .9M1687.8 932c-18.9 3.2-35.4 12.7-43.6 25-5.4 8.1-7.3 14.5-7.3 25.1 0 19.3 7.2 33.5 22.5 44.3 7.2 5.1 12 7.6 32.2 16.6 15.7 7 27.1 13.2 32.2 17.5 7.8 6.6 9.5 19.4 3.6 27.7-2 2.9-4.9 5.3-8.9 7.3-5.7 2.8-6.6 3-17.5 2.9-12.4-.2-19.9-2.1-27.1-6.8-2.9-2-3.8-3.5-5.3-8.7-.9-3.5-2.6-9.4-3.8-13.2l-2-6.7H1636v42.8l11.3 3.1c28.7 7.8 36.8 9.2 56.1 9.3 11.9.1 17.2-.3 25.1-2 24.4-5.2 41.5-19.9 45.9-39.2 3.8-16.5.5-31.1-9.8-43.4-8-9.7-19.7-16.6-50.2-29.9-19.4-8.5-21.9-9.9-28.2-15.8-5.5-5.3-7.2-9.2-7.2-16.4 0-10.1 5.5-16.7 16.6-20.1 9.1-2.7 23.8-1.4 32.2 3 3.8 2 3.6 1.5 8.2 16.6l3.6 11.5 12.7.3 12.7.3v-42.6l-7.9-2.3c-19.3-5.5-30.7-7.2-48.1-7.1-9.1.1-18.6.5-21.2.9M981 1173v21h787v-42H981z'/%3E%3C/svg%3E");
    mask-size: cover;
    mask-position: center;
    mask-repeat: no-repeat;
}

.subtitle {
    font-size: 1.1rem;
    color: var(--text-secondary);
    font-weight: 400;
    max-width: 300px;
}

.mode-toggle {
    display: flex;
    justify-content: center;
    background: rgba(0, 0, 0, 0.05);
    border-radius: 8px;
    padding: 4px;
    width: 100%;
}

@media (prefers-color-scheme: dark) {
    .mode-toggle { background: rgba(255, 255, 255, 0.05); }
}

.toggle-btn {
    padding: 0.6rem 1.5rem;
    border: none;
    background: transparent;
    font-family: inherit;
    font-weight: bold;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.toggle-btn:hover {
    text-decoration: underline;
}

.toggle-btn.active {
    background: var(--bg-color);
    border: 2px solid var(--text-primary);
    color: var(--text-primary);
    box-shadow: 5px 5px 0px var(--text-primary);
}

.toggle-btn.active:hover {
    background-color: var(--dropzone-hover);
    transform: translateY(-2px);
    text-decoration: none;
}

.dropzone {
    border: 2px solid var(--text-primary);
    padding: 4rem 2rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    position: relative;
    background: transparent;
    box-shadow: 10px 10px 0px var(--text-primary);
}

.dropzone:hover, .dropzone.dragover {
    background-color: var(--dropzone-hover);
    transform: translateY(-2px);
}

.dropzone-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
}

.dropzone .icon {
    font-size: 2rem;
    margin-bottom: 0.5rem;
}

.dropzone p {
    font-weight: 900;
    letter-spacing: 0.05em;
    font-size: 1rem;
}

.privacy-text {
    font-size: 0.8rem;
    color: var(--text-secondary);
    opacity: 0.6;
}

.dropzone.active {
    border-style: solid;
    border-color: var(--accent-color);
}

.loading-content {
    text-align: center;
}

.spinner {
    width: 40px;
    height: 40px;
    margin: 0 auto 1.5rem;
    border: 3px solid var(--accent-color);
    border-top-color: var(--text-primary);
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

#loading-status {
    font-size: 0.9rem;
    opacity: 0.6;
    margin-top: 0.5rem;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(44, 40, 37, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
    backdrop-filter: blur(4px);
}

.overlay.hidden {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

.overlay-content {
    background: var(--bg-color);
    padding: 3rem;
    border: 2px solid var(--text-primary);
    text-align: center;
    max-width: 400px;
    box-shadow: 10px 10px 0px var(--text-primary);
}

.dashboard-content {
    max-width: 1100px !important; 
    width: 90%;
    max-height: 85vh;
    overflow-y: auto;
    padding-bottom: 2rem;
}

.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    margin-top: 2rem;
    text-align: left;
}

.close-btn {
    margin-top: 2rem;
    background: var(--text-primary);
    color: var(--bg-color);
    border: none;
    padding: 0.8rem 2rem;
    font-family: inherit;
    cursor: pointer;
    font-weight: bold;
}

.app-footer {
    position: relative;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0.6;
}

.footer-content {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 0.85rem;
    color: var(--text-secondary);
}

.watermark {
    font-weight: 600;
    letter-spacing: 0.5px;
    color: var(--text-secondary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.watermark:hover {
    text-decoration: underline;
}

.divider {
    opacity: 0.5;
}

.github-link {
    color: var(--text-secondary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.github-link:hover {
    color: var(--text-primary);
    text-decoration: underline;
}
