body {
    font-family: Arial, sans-serif;
    background-color: #fff;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    color: #3c4043;
}

/* --- ESTILOS DE LOGIN --- */
.form-container {
    width: 320px;
    padding: 24px;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.form-container h2 { text-align: center; margin-top: 0; color: #333; }
.form-container form { display: flex; flex-direction: column; }
.form-container label { margin-top: 12px; margin-bottom: 4px; font-size: 14px; }
.form-container input { padding: 10px; border: 1px solid #ccc; border-radius: 4px; }
.form-container button {
    margin-top: 20px; padding: 10px; border: none; border-radius: 4px;
    background-color: #1a73e8; color: white; font-size: 16px; cursor: pointer;
}
.form-container button:hover { background-color: #1669c1; }
.error-message {
    color: #d93025; font-size: 13px; text-align: center;
    margin-top: 10px; min-height: 15px;
}

/* --- ESTILOS PRINCIPAIS --- */
#main-view { width: 100%; height: 100%; }
.container {
    text-align: center; position: absolute; top: 15%; width: 100%;
    left: 0; padding: 0 8%; box-sizing: border-box;
}
#stoic-quote {
    font-size: 4rem; font-weight: 500;
    margin-bottom: 40px; color: #4285F4;
}
#shortcuts-grid {
    display: flex; flex-wrap: wrap; justify-content: center;
    gap: 16px; max-width: 580px; margin: 0 auto;
}
.shortcut-item {
    position: relative;
    display: flex; flex-direction: column; align-items: center;
    width: 90px; text-decoration: none; color: inherit;
    padding: 8px; border-radius: 4px;
}
.shortcut-item:hover { background-color: #f1f3f4; }
.shortcut-icon-wrapper {
    width: 48px; height: 48px; border-radius: 50%; background-color: #f1f3f4;
    display: flex; justify-content: center; align-items: center; margin-bottom: 8px;
}
.shortcut-icon-wrapper img, .shortcut-icon-wrapper .add-icon {
    width: 24px; height: 24px; object-fit: contain;
}
.add-icon { font-size: 28px; font-weight: bold; color: #5f6368; }
.shortcut-name {
    font-size: 13px; white-space: nowrap; overflow: hidden;
    text-overflow: ellipsis; width: 100%;
}
.logout-button {
    position: fixed; top: 16px; right: 16px; padding: 8px 16px;
    border: 1px solid #ccc; border-radius: 4px; background-color: #f8f9fa; cursor: pointer;
}
.logout-button:hover { background-color: #f1f3f4; }

/* --- BOTÃO DE DELETAR ATALHO --- */
.delete-shortcut-btn {
    position: absolute; top: 0; right: 0; width: 20px; height: 20px;
    background-color: #d93025; color: white; border: none; border-radius: 50%;
    cursor: pointer; font-size: 14px; line-height: 20px; text-align: center;
    opacity: 0; transition: opacity 0.2s; z-index: 10;
}
.shortcut-item:hover .delete-shortcut-btn { opacity: 1; }

/* --- ESTILOS DO MODAL --- */
.modal-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex; justify-content: center; align-items: center; z-index: 1000;
}
.modal-content {
    background-color: white; padding: 24px; border-radius: 8px;
    width: 300px; box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}
.modal-content h3 { margin-top: 0; }
.modal-content form { display: flex; flex-direction: column; }
.modal-content label { margin-top: 12px; margin-bottom: 4px; font-size: 14px; }
.modal-content input { padding: 8px; border: 1px solid #ddd; border-radius: 4px; }
.modal-actions { margin-top: 20px; display: flex; justify-content: flex-end; gap: 10px; }
.modal-actions button { padding: 8px 16px; border: none; border-radius: 4px; cursor: pointer; }
.modal-actions button[type="submit"] { background-color: #1a73e8; color: white; }
.modal-actions button[type="button"] { background-color: #f1f3f4; }